More Info
Private Name Tags
ContractCreator
Latest 6 from a total of 6 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer Ownersh... | 11750501 | 1325 days ago | IN | 0 ETH | 0.00743859 | ||||
Transfer Ownersh... | 11745951 | 1326 days ago | IN | 0 ETH | 0.00261579 | ||||
Set Fee Amount O... | 11745943 | 1326 days ago | IN | 0 ETH | 0.00369189 | ||||
Set Fee Amount O... | 11745942 | 1326 days ago | IN | 0 ETH | 0.00369087 | ||||
Set Fee Amount O... | 11745940 | 1326 days ago | IN | 0 ETH | 0.00368985 | ||||
0x60806040 | 11745939 | 1326 days ago | IN | 0 ETH | 0.10401433 |
Loading...
Loading
Contract Name:
swapContract
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-01-28 */ // File: openzeppelin-solidity/contracts/token/ERC20/IERC20.sol // SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @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); } // File: openzeppelin-solidity/contracts/GSN/Context.sol 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; } } // File: openzeppelin-solidity/contracts/access/Ownable.sol pragma solidity >=0.6.0 <0.8.0; /** * @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 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; } } // File: openzeppelin-solidity/contracts/math/SafeMath.sol 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, 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) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * 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); uint256 c = a - b; return c; } /** * @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) { // 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 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts 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) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message 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, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts 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) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message 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, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File: contracts/swapContract.sol pragma solidity ^0.7.0; contract swapContract is Ownable { using SafeMath for uint256; IERC20 public tokenAddress; address public feeAddress; uint128 public numOfTotalBlockchains; uint128 public numOfThisBlockchain; mapping(uint128 => uint128) public feeAmountOfBlockchain; event TransferFromOtherBlockchain(address user, uint256 amount); event TransferToOtherBlockchain(uint128 blockchain, address user, uint256 amount, string newAddress); constructor( IERC20 _tokenAddress, address _feeAddress, uint128 _numOfTotalBlockchains, uint128 _numOfThisBlockchain) { tokenAddress = _tokenAddress; feeAddress = _feeAddress; require( _numOfTotalBlockchains > 0, "WWISH: Wrong numOfTotalBlockchains" ); require( _numOfThisBlockchain < _numOfTotalBlockchains, "WWISH: Wrong numOfThisBlockchain" ); numOfTotalBlockchains = _numOfTotalBlockchains; numOfThisBlockchain = _numOfThisBlockchain; } function transferToOtherBlockchain(uint128 blockchain, uint256 amount, string memory newAddress) external { require( bytes(newAddress).length > 0, "swapContract: No destination address provided" ); require( blockchain < numOfTotalBlockchains && blockchain != numOfThisBlockchain, "swapContract: Wrong choose of blockchain" ); require( amount >= feeAmountOfBlockchain[blockchain], "swapContract: Not enough amount of tokens" ); address sender = _msgSender(); require( tokenAddress.balanceOf(sender) >= amount, "swapContract: Not enough balance" ); tokenAddress.transferFrom(sender, address(this), amount); emit TransferToOtherBlockchain(blockchain, sender, amount, newAddress); } function transferToUserWithoutFee(address user, uint256 amount) external onlyOwner { tokenAddress.transfer(user, amount); emit TransferFromOtherBlockchain(user, amount); } /* function transferToUserWithFee(address user, uint256 amountToUser, uint256 feeAmount) external onlyOwner { tokenAddress.transfer(user, amountToUser); tokenAddress.transfer(feeAddress, feeAmount); emit TransferFromOtherBlockchain(user, amountToUser); } */ function transferToUserWithFee(address user, uint256 amountToUser) external onlyOwner { uint256 fee = feeAmountOfBlockchain[numOfThisBlockchain]; tokenAddress.transfer(user, amountToUser.sub(fee)); tokenAddress.transfer(feeAddress, fee); emit TransferFromOtherBlockchain(user, amountToUser); } function changeInformationAboutOtherBlockchain( uint128 newNumOfThisBlockchain, uint128 newNumOfTotalBlockchains ) external onlyOwner { numOfTotalBlockchains = newNumOfTotalBlockchains; numOfThisBlockchain = newNumOfThisBlockchain; } function changeFeeAddress(address newFeeAddress) external onlyOwner { feeAddress = newFeeAddress; } function setFeeAmountOfBlockchain(uint128 blockchainNum, uint128 feeAmount) external onlyOwner { feeAmountOfBlockchain[blockchainNum] = feeAmount; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IERC20","name":"_tokenAddress","type":"address"},{"internalType":"address","name":"_feeAddress","type":"address"},{"internalType":"uint128","name":"_numOfTotalBlockchains","type":"uint128"},{"internalType":"uint128","name":"_numOfThisBlockchain","type":"uint128"}],"stateMutability":"nonpayable","type":"constructor"},{"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":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TransferFromOtherBlockchain","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint128","name":"blockchain","type":"uint128"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"string","name":"newAddress","type":"string"}],"name":"TransferToOtherBlockchain","type":"event"},{"inputs":[{"internalType":"address","name":"newFeeAddress","type":"address"}],"name":"changeFeeAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"newNumOfThisBlockchain","type":"uint128"},{"internalType":"uint128","name":"newNumOfTotalBlockchains","type":"uint128"}],"name":"changeInformationAboutOtherBlockchain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint128","name":"","type":"uint128"}],"name":"feeAmountOfBlockchain","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numOfThisBlockchain","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numOfTotalBlockchains","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"blockchainNum","type":"uint128"},{"internalType":"uint128","name":"feeAmount","type":"uint128"}],"name":"setFeeAmountOfBlockchain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"tokenAddress","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"blockchain","type":"uint128"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"string","name":"newAddress","type":"string"}],"name":"transferToOtherBlockchain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"amountToUser","type":"uint256"}],"name":"transferToUserWithFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferToUserWithoutFee","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506040516115803803806115808339818101604052608081101561003357600080fd5b508051602082015160408301516060909301519192909160006100546101af565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600180546001600160a01b038087166001600160a01b03199283161790925560028054928616929091169190911790556001600160801b0382166101135760405162461bcd60e51b815260040180806020018281038252602281526020018061155e6022913960400191505060405180910390fd5b816001600160801b0316816001600160801b031610610179576040805162461bcd60e51b815260206004820181905260248201527f57574953483a2057726f6e67206e756d4f6654686973426c6f636b636861696e604482015290519081900360640190fd5b600380546001600160801b03928316600160801b029383166001600160801b031990911617909116919091179055506101b39050565b3390565b61139c806101c26000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063bf9cfe0511610066578063bf9cfe0514610307578063c5d4d1c21461030f578063d86d1d1a1461033e578063f2fde38b14610375576100ea565b8063715018a6146102ef5780638da5cb5b146102f75780639d76ea58146102ff576100ea565b806341275358116100c857806341275358146102215780634f8d99a614610252578063525a14861461028b5780635be48b2c146102b8576100ea565b8063285e1406146100ef57806339900d9d146101245780633f19f6571461015d575b600080fd5b6101226004803603602081101561010557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166103a8565b005b6101226004803603604081101561013a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610480565b6101226004803603606081101561017357600080fd5b6fffffffffffffffffffffffffffffffff823516916020810135918101906060810160408201356401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460018302840111640100000000831117156101e057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106f7945050505050565b610229610b24565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101226004803603604081101561026857600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610b40565b610293610cce565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b610122600480360360408110156102ce57600080fd5b506fffffffffffffffffffffffffffffffff81358116916020013516610ce6565b610122610dd2565b610229610ed2565b610229610eee565b610293610f0a565b6102936004803603602081101561032557600080fd5b50356fffffffffffffffffffffffffffffffff16610f36565b6101226004803603604081101561035457600080fd5b506fffffffffffffffffffffffffffffffff81358116916020013516610f5a565b6101226004803603602081101561038b57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661103a565b6103b06111c4565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461043957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6104886111c4565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461051157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546fffffffffffffffffffffffffffffffff700100000000000000000000000000000000909104811660009081526004602052604090205460015491169073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8461057785856111c8565b6040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156105ca57600080fd5b505af11580156105de573d6000803e3d6000fd5b505050506040513d60208110156105f457600080fd5b5050600154600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b15801561067557600080fd5b505af1158015610689573d6000803e3d6000fd5b505050506040513d602081101561069f57600080fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff851681526020810184905281517f573e4bbaedc1c28a5291f3c8ae7ee81de30a246b9b96ad2e130f5f34e8708822929181900390910190a1505050565b6000815111610751576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180611312602d913960400191505060405180910390fd5b6003546fffffffffffffffffffffffffffffffff9081169084161080156107a357506003546fffffffffffffffffffffffffffffffff8481167001000000000000000000000000000000009092041614155b6107f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061133f6028913960400191505060405180910390fd5b6fffffffffffffffffffffffffffffffff80841660009081526004602052604090205416821015610874576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806112e96029913960400191505060405180910390fd5b600061087e6111c4565b600154604080517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80851660048301529151939450869391909216916370a08231916024808301926020929190829003018186803b1580156108f657600080fd5b505afa15801561090a573d6000803e3d6000fd5b505050506040513d602081101561092057600080fd5b5051101561098f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f73776170436f6e74726163743a204e6f7420656e6f7567682062616c616e6365604482015290519081900360640190fd5b600154604080517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015230602483015260448201879052915191909216916323b872dd9160648083019260209291908290030181600087803b158015610a1157600080fd5b505af1158015610a25573d6000803e3d6000fd5b505050506040513d6020811015610a3b57600080fd5b5050604080516fffffffffffffffffffffffffffffffff8616815273ffffffffffffffffffffffffffffffffffffffff831660208281019190915291810185905260806060820181815285519183019190915284517f530414e7b01e4eb239740ce86981a020e12faaffca6a86bbb62113a4ffafbaf693889386938993899360a08401919085019080838360005b83811015610ae1578181015183820152602001610ac9565b50505050905090810190601f168015610b0e5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a150505050565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b610b486111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610bd157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600154604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b158015610c4d57600080fd5b505af1158015610c61573d6000803e3d6000fd5b505050506040513d6020811015610c7757600080fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff841681526020810183905281517f573e4bbaedc1c28a5291f3c8ae7ee81de30a246b9b96ad2e130f5f34e8708822929181900390910190a15050565b6003546fffffffffffffffffffffffffffffffff1681565b610cee6111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610d7757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600380546fffffffffffffffffffffffffffffffff938416700100000000000000000000000000000000029284167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090911617909216179055565b610dda6111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610e6357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60035470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b6004602052600090815260409020546fffffffffffffffffffffffffffffffff1681565b610f626111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610feb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6fffffffffffffffffffffffffffffffff918216600090815260046020526040902080547fffffffffffffffffffffffffffffffff000000000000000000000000000000001691909216179055565b6110426111c4565b60005473ffffffffffffffffffffffffffffffffffffffff9081169116146110cb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116611137576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806112c36026913960400191505060405180910390fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b3390565b600061120a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611211565b9392505050565b600081848411156112ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127f578181015183820152602001611267565b50505050905090810190601f1680156112ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737373776170436f6e74726163743a204e6f7420656e6f75676820616d6f756e74206f6620746f6b656e7373776170436f6e74726163743a204e6f2064657374696e6174696f6e20616464726573732070726f766964656473776170436f6e74726163743a2057726f6e672063686f6f7365206f6620626c6f636b636861696ea26469706673582212204626396f63237d556db573e385a001526d13271559ace0b9d9a03e5c0d11b3b864736f6c6343000706003357574953483a2057726f6e67206e756d4f66546f74616c426c6f636b636861696e730000000000000000000000000564f0e589f15fb0ce67e0dbcb1b737e14447f96000000000000000000000000a051433b7f5c1e9f388b0d0a397cfc52991b9bab00000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000002
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063715018a61161008c578063bf9cfe0511610066578063bf9cfe0514610307578063c5d4d1c21461030f578063d86d1d1a1461033e578063f2fde38b14610375576100ea565b8063715018a6146102ef5780638da5cb5b146102f75780639d76ea58146102ff576100ea565b806341275358116100c857806341275358146102215780634f8d99a614610252578063525a14861461028b5780635be48b2c146102b8576100ea565b8063285e1406146100ef57806339900d9d146101245780633f19f6571461015d575b600080fd5b6101226004803603602081101561010557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166103a8565b005b6101226004803603604081101561013a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610480565b6101226004803603606081101561017357600080fd5b6fffffffffffffffffffffffffffffffff823516916020810135918101906060810160408201356401000000008111156101ac57600080fd5b8201836020820111156101be57600080fd5b803590602001918460018302840111640100000000831117156101e057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506106f7945050505050565b610229610b24565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101226004803603604081101561026857600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610b40565b610293610cce565b604080516fffffffffffffffffffffffffffffffff9092168252519081900360200190f35b610122600480360360408110156102ce57600080fd5b506fffffffffffffffffffffffffffffffff81358116916020013516610ce6565b610122610dd2565b610229610ed2565b610229610eee565b610293610f0a565b6102936004803603602081101561032557600080fd5b50356fffffffffffffffffffffffffffffffff16610f36565b6101226004803603604081101561035457600080fd5b506fffffffffffffffffffffffffffffffff81358116916020013516610f5a565b6101226004803603602081101561038b57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661103a565b6103b06111c4565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461043957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6104886111c4565b60005473ffffffffffffffffffffffffffffffffffffffff90811691161461051157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6003546fffffffffffffffffffffffffffffffff700100000000000000000000000000000000909104811660009081526004602052604090205460015491169073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8461057785856111c8565b6040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156105ca57600080fd5b505af11580156105de573d6000803e3d6000fd5b505050506040513d60208110156105f457600080fd5b5050600154600254604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9283166004820152602481018590529051919092169163a9059cbb9160448083019260209291908290030181600087803b15801561067557600080fd5b505af1158015610689573d6000803e3d6000fd5b505050506040513d602081101561069f57600080fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff851681526020810184905281517f573e4bbaedc1c28a5291f3c8ae7ee81de30a246b9b96ad2e130f5f34e8708822929181900390910190a1505050565b6000815111610751576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180611312602d913960400191505060405180910390fd5b6003546fffffffffffffffffffffffffffffffff9081169084161080156107a357506003546fffffffffffffffffffffffffffffffff8481167001000000000000000000000000000000009092041614155b6107f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061133f6028913960400191505060405180910390fd5b6fffffffffffffffffffffffffffffffff80841660009081526004602052604090205416821015610874576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260298152602001806112e96029913960400191505060405180910390fd5b600061087e6111c4565b600154604080517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80851660048301529151939450869391909216916370a08231916024808301926020929190829003018186803b1580156108f657600080fd5b505afa15801561090a573d6000803e3d6000fd5b505050506040513d602081101561092057600080fd5b5051101561098f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f73776170436f6e74726163743a204e6f7420656e6f7567682062616c616e6365604482015290519081900360640190fd5b600154604080517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015230602483015260448201879052915191909216916323b872dd9160648083019260209291908290030181600087803b158015610a1157600080fd5b505af1158015610a25573d6000803e3d6000fd5b505050506040513d6020811015610a3b57600080fd5b5050604080516fffffffffffffffffffffffffffffffff8616815273ffffffffffffffffffffffffffffffffffffffff831660208281019190915291810185905260806060820181815285519183019190915284517f530414e7b01e4eb239740ce86981a020e12faaffca6a86bbb62113a4ffafbaf693889386938993899360a08401919085019080838360005b83811015610ae1578181015183820152602001610ac9565b50505050905090810190601f168015610b0e5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a150505050565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b610b486111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610bd157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600154604080517fa9059cbb00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b158015610c4d57600080fd5b505af1158015610c61573d6000803e3d6000fd5b505050506040513d6020811015610c7757600080fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff841681526020810183905281517f573e4bbaedc1c28a5291f3c8ae7ee81de30a246b9b96ad2e130f5f34e8708822929181900390910190a15050565b6003546fffffffffffffffffffffffffffffffff1681565b610cee6111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610d7757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600380546fffffffffffffffffffffffffffffffff938416700100000000000000000000000000000000029284167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090911617909216179055565b610dda6111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610e6357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60035470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b6004602052600090815260409020546fffffffffffffffffffffffffffffffff1681565b610f626111c4565b60005473ffffffffffffffffffffffffffffffffffffffff908116911614610feb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6fffffffffffffffffffffffffffffffff918216600090815260046020526040902080547fffffffffffffffffffffffffffffffff000000000000000000000000000000001691909216179055565b6110426111c4565b60005473ffffffffffffffffffffffffffffffffffffffff9081169116146110cb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116611137576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806112c36026913960400191505060405180910390fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b3390565b600061120a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611211565b9392505050565b600081848411156112ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561127f578181015183820152602001611267565b50505050905090810190601f1680156112ac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737373776170436f6e74726163743a204e6f7420656e6f75676820616d6f756e74206f6620746f6b656e7373776170436f6e74726163743a204e6f2064657374696e6174696f6e20616464726573732070726f766964656473776170436f6e74726163743a2057726f6e672063686f6f7365206f6620626c6f636b636861696ea26469706673582212204626396f63237d556db573e385a001526d13271559ace0b9d9a03e5c0d11b3b864736f6c63430007060033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000564f0e589f15fb0ce67e0dbcb1b737e14447f96000000000000000000000000a051433b7f5c1e9f388b0d0a397cfc52991b9bab00000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000002
-----Decoded View---------------
Arg [0] : _tokenAddress (address): 0x0564F0e589F15Fb0ce67e0DbCb1B737e14447f96
Arg [1] : _feeAddress (address): 0xA051433b7f5C1E9F388B0D0a397CFC52991b9Bab
Arg [2] : _numOfTotalBlockchains (uint128): 3
Arg [3] : _numOfThisBlockchain (uint128): 2
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000000564f0e589f15fb0ce67e0dbcb1b737e14447f96
Arg [1] : 000000000000000000000000a051433b7f5c1e9f388b0d0a397cfc52991b9bab
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000002
Deployed Bytecode Sourcemap
11622:3450:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14776:118;;;;;;;;;;;;;;;;-1:-1:-1;14776:118:0;;;;:::i;:::-;;14119:339;;;;;;;;;;;;;;;;-1:-1:-1;14119:339:0;;;;;;;;;:::i;12711:891::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12711:891:0;;-1:-1:-1;12711:891:0;;-1:-1:-1;;;;;12711:891:0:i;11731:25::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13610:199;;;;;;;;;;;;;;;;-1:-1:-1;13610:199:0;;;;;;;;;:::i;11765:36::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14466:302;;;;;;;;;;;;;;;;-1:-1:-1;14466:302:0;;;;;;;;;;;:::i;5599:148::-;;;:::i;4957:79::-;;;:::i;11698:26::-;;;:::i;11808:34::-;;;:::i;11849:56::-;;;;;;;;;;;;;;;;-1:-1:-1;11849:56:0;;;;:::i;14902:167::-;;;;;;;;;;;;;;;;-1:-1:-1;14902:167:0;;;;;;;;;;;:::i;5902:244::-;;;;;;;;;;;;;;;;-1:-1:-1;5902:244:0;;;;:::i;14776:118::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14860:10:::1;:26:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;14776:118::o;14119:339::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14257:19:::1;::::0;::::1;::::0;;;::::1;::::0;::::1;14221:11;14235:42:::0;;;:21:::1;:42;::::0;;;;;;14288:12;14235:42;::::1;::::0;14288:12:::1;;:21;14310:4:::0;14316:21:::1;:12:::0;14235:42;14316:16:::1;:21::i;:::-;14288:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;14349:12:0::1;::::0;14371:10:::1;::::0;14349:38:::1;::::0;;;;;:12:::1;14371:10:::0;;::::1;14349:38;::::0;::::1;::::0;;;;;;;;;:12;;;::::1;::::0;:21:::1;::::0;:38;;;;;14288:50:::1;::::0;14349:38;;;;;;;:12:::1;::::0;:38;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;14403:47:0::1;::::0;;::::1;::::0;::::1;::::0;;14349:38:::1;14403:47:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;5239:1;14119:339:::0;;:::o;12711:891::-;12882:1;12861:10;12855:24;:28;12833:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13002:21;;;;;;12989:34;;;;:71;;;;-1:-1:-1;13041:19:0;;;13027:33;;;13041:19;;;;;13027:33;;12989:71;12967:161;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13171:33;;;;;;;;:21;:33;;;;;;;13161:43;;;13139:134;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13284:14;13301:12;:10;:12::i;:::-;13346;;:30;;;;;;:12;:30;;;;;;;;;13284:29;;-1:-1:-1;13380:6:0;;13346:12;;;;;:22;;:30;;;;;;;;;;;;;;:12;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13346:30:0;:40;;13324:122;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13457:12;;:56;;;;;;:12;:56;;;;;;;13499:4;13457:56;;;;;;;;;;;;:12;;;;;:25;;:56;;;;;;;;;;;;;;:12;;:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13529:65:0;;;;;;;;;;;13457:56;13529:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13555:10;;13567:6;;13575;;13583:10;;13529:65;;;;;;;;;;;-1:-1:-1;13529:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12711:891;;;;:::o;11731:25::-;;;;;;:::o;13610:199::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13709:12:::1;::::0;:35:::1;::::0;;;;;:12:::1;:35:::0;;::::1;;::::0;::::1;::::0;;;;;;;;;:12;;;::::1;::::0;:21:::1;::::0;:35;;;;;::::1;::::0;;;;;;;;:12:::1;::::0;:35;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;13760:41:0::1;::::0;;::::1;::::0;::::1;::::0;;13709:35:::1;13760:41:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;13610:199:::0;;:::o;11765:36::-;;;;;;:::o;14466:302::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14657:21:::1;:48:::0;;::::1;14716:44:::0;;::::1;::::0;::::1;14657:48:::0;;::::1;::::0;;;::::1;;14716:44:::0;;::::1;;::::0;;14466:302::o;5599:148::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5706:1:::1;5690:6:::0;;5669:40:::1;::::0;::::1;5690:6:::0;;::::1;::::0;5669:40:::1;::::0;5706:1;;5669:40:::1;5737:1;5720:19:::0;;;::::1;::::0;;5599:148::o;4957:79::-;4995:7;5022:6;;;4957:79;:::o;11698:26::-;;;;;;:::o;11808:34::-;;;;;;;;;:::o;11849:56::-;;;;;;;;;;;;;;;:::o;14902:167::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15013:36:::1;::::0;;::::1;;::::0;;;:21:::1;:36;::::0;;;;:48;;;::::1;::::0;;;::::1;;::::0;;14902:167::o;5902:244::-;5179:12;:10;:12::i;:::-;5169:6;;:22;:6;;;:22;;;5161:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5991:22:::1;::::0;::::1;5983:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6093:6;::::0;;6072:38:::1;::::0;::::1;::::0;;::::1;::::0;6093:6;::::1;::::0;6072:38:::1;::::0;::::1;6121:6;:17:::0;;;::::1;;::::0;;;::::1;::::0;;;::::1;::::0;;5902:244::o;3488:106::-;3576:10;3488:106;:::o;7554:136::-;7612:7;7639:43;7643:1;7646;7639:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;7632:50;7554:136;-1:-1:-1;;;7554:136:0:o;7993:192::-;8079:7;8115:12;8107:6;;;;8099:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;8151:5:0;;;7993:192::o
Swarm Source
ipfs://4626396f63237d556db573e385a001526d13271559ace0b9d9a03e5c0d11b3b8
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.