ETH Price: $2,028.53 (+1.29%)
 

Overview

Max Total Supply

7,519,439.498294260053089563 WALLE...

Holders

9,656 (0.00%)

Transfers

-
244 ( 1,425.00%)

Market

Price

$0.0092 @ 0.000005 ETH (+3.68%)

Onchain Market Cap

-

Circulating Supply Market Cap

$6,227,250.00

Other Info

Token Contract (WITH 18 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Ambire provides secure smart accounts (based on account abstraction & ERC-4337) that can be authenticated via hardware wallets or in-browser keys and optional email recovery.

Market

Volume (24H):$329,824.00
Market Capitalization:$6,227,250.00
Circulating Supply:674,666,115.00 WALLET
Market Data Source: Coinmarketcap

Contract Source Code Verified (Exact Match)

Contract Name:
OptimismMintableERC20

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
// SPDX-License-Identifier: MIT
pragma solidity 0.8.15;

import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
import { ILegacyMintableERC20, IOptimismMintableERC20 } from "./IOptimismMintableERC20.sol";
import { ISemver } from "./ISemver.sol";

/// @title OptimismMintableERC20
/// @notice OptimismMintableERC20 is a standard extension of the base ERC20 token contract designed
///         to allow the StandardBridge contracts to mint and burn tokens. This makes it possible to
///         use an OptimismMintablERC20 as the L2 representation of an L1 token, or vice-versa.
///         Designed to be backwards compatible with the older StandardL2ERC20 token which was only
///         meant for use on L2.
contract OptimismMintableERC20 is IOptimismMintableERC20, ILegacyMintableERC20, ERC20, ISemver {
    /// @notice Address of the corresponding version of this token on the remote chain.
    address public immutable REMOTE_TOKEN;

    /// @notice Address of the StandardBridge on this network.
    address public immutable BRIDGE;

    /// @notice Decimals of the token
    uint8 private immutable DECIMALS;

    /// @notice Emitted whenever tokens are minted for an account.
    /// @param account Address of the account tokens are being minted for.
    /// @param amount  Amount of tokens minted.
    event Mint(address indexed account, uint256 amount);

    /// @notice Emitted whenever tokens are burned from an account.
    /// @param account Address of the account tokens are being burned from.
    /// @param amount  Amount of tokens burned.
    event Burn(address indexed account, uint256 amount);

    /// @notice A modifier that only allows the bridge to call
    modifier onlyBridge() {
        require(msg.sender == BRIDGE, "OptimismMintableERC20: only bridge can mint and burn");
        _;
    }

    /// @notice Semantic version.
    /// @custom:semver 1.3.0
    string public constant version = "1.3.0";

    /// @param _bridge      Address of the L2 standard bridge.
    /// @param _remoteToken Address of the corresponding L1 token.
    /// @param _name        ERC20 name.
    /// @param _symbol      ERC20 symbol.
    constructor(
        address _bridge,
        address _remoteToken,
        string memory _name,
        string memory _symbol,
        uint8 _decimals
    )
        ERC20(_name, _symbol)
    {
        REMOTE_TOKEN = _remoteToken;
        BRIDGE = _bridge;
        DECIMALS = _decimals;
    }

    /// @notice Allows the StandardBridge on this network to mint tokens.
    /// @param _to     Address to mint tokens to.
    /// @param _amount Amount of tokens to mint.
    function mint(
        address _to,
        uint256 _amount
    )
        external
        virtual
        override(IOptimismMintableERC20, ILegacyMintableERC20)
        onlyBridge
    {
        _mint(_to, _amount);
        emit Mint(_to, _amount);
    }

    /// @notice Allows the StandardBridge on this network to burn tokens.
    /// @param _from   Address to burn tokens from.
    /// @param _amount Amount of tokens to burn.
    function burn(
        address _from,
        uint256 _amount
    )
        external
        virtual
        override(IOptimismMintableERC20, ILegacyMintableERC20)
        onlyBridge
    {
        _burn(_from, _amount);
        emit Burn(_from, _amount);
    }

    /// @notice ERC165 interface check function.
    /// @param _interfaceId Interface ID to check.
    /// @return Whether or not the interface is supported by this contract.
    function supportsInterface(bytes4 _interfaceId) external pure virtual returns (bool) {
        bytes4 iface1 = type(IERC165).interfaceId;
        // Interface corresponding to the legacy L2StandardERC20.
        bytes4 iface2 = type(ILegacyMintableERC20).interfaceId;
        // Interface corresponding to the updated OptimismMintableERC20 (this contract).
        bytes4 iface3 = type(IOptimismMintableERC20).interfaceId;
        return _interfaceId == iface1 || _interfaceId == iface2 || _interfaceId == iface3;
    }

    /// @custom:legacy
    /// @notice Legacy getter for the remote token. Use REMOTE_TOKEN going forward.
    function l1Token() public view returns (address) {
        return REMOTE_TOKEN;
    }

    /// @custom:legacy
    /// @notice Legacy getter for the bridge. Use BRIDGE going forward.
    function l2Bridge() public view returns (address) {
        return BRIDGE;
    }

    /// @custom:legacy
    /// @notice Legacy getter for REMOTE_TOKEN.
    function remoteToken() public view returns (address) {
        return REMOTE_TOKEN;
    }

    /// @custom:legacy
    /// @notice Legacy getter for BRIDGE.
    function bridge() public view returns (address) {
        return BRIDGE;
    }

    /// @dev Returns the number of decimals used to get its user representation.
    /// For example, if `decimals` equals `2`, a balance of `505` tokens should
    /// be displayed to a user as `5.05` (`505 / 10 ** 2`).
    /// NOTE: This information is only used for _display_ purposes: it in
    /// no way affects any of the arithmetic of the contract, including
    /// {IERC20-balanceOf} and {IERC20-transfer}.
    function decimals() public view override returns (uint8) {
        return DECIMALS;
    }
}

File 2 of 8 : ISemver.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

/// @title ISemver
/// @notice ISemver is a simple contract for ensuring that contracts are
///         versioned using semantic versioning.
interface ISemver {
    /// @notice Getter for the semantic version of the contract. This is not
    ///         meant to be used onchain but instead meant to be used by offchain
    ///         tooling.
    /// @return Semver contract version as a string.
    function version() external view returns (string memory);
}

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";

/// @title IOptimismMintableERC20
/// @notice This interface is available on the OptimismMintableERC20 contract.
///         We declare it as a separate interface so that it can be used in
///         custom implementations of OptimismMintableERC20.
interface IOptimismMintableERC20 is IERC165 {
    function remoteToken() external view returns (address);

    function bridge() external returns (address);

    function mint(address _to, uint256 _amount) external;

    function burn(address _from, uint256 _amount) external;
}

/// @custom:legacy
/// @title ILegacyMintableERC20
/// @notice This interface was available on the legacy L2StandardERC20 contract.
///         It remains available on the OptimismMintableERC20 contract for
///         backwards compatibility.
interface ILegacyMintableERC20 is IERC165 {
    function l1Token() external view returns (address);

    function mint(address _to, uint256 _amount) external;

    function burn(address _from, uint256 _amount) external;
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC165 standard, as defined in the
 * https://eips.ethereum.org/EIPS/eip-165[EIP].
 *
 * Implementers can declare support of contract interfaces, which can then be
 * queried by others ({ERC165Checker}).
 *
 * For an implementation, see {ERC165}.
 */
interface IERC165 {
    /**
     * @dev Returns true if this contract implements the interface defined by
     * `interfaceId`. See the corresponding
     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
     * to learn more about how these ids are created.
     *
     * This function call must use less than 30 000 gas.
     */
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/ERC20.sol)

pragma solidity ^0.8.0;

import "./IERC20.sol";
import "./extensions/IERC20Metadata.sol";
import "../../utils/Context.sol";

/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract using {_mint}.
 * For a generic mechanism see {ERC20PresetMinterPauser}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * The default value of {decimals} is 18. To change this, you should override
 * this function so it returns a different value.
 *
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
 * instead returning `false` on failure. This behavior is nonetheless
 * conventional and does not conflict with the expectations of ERC20
 * applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */
contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual override returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the default value returned by this function, unless
     * it's overridden.
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
     * `transferFrom`. This is semantically equivalent to an infinite approval.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * NOTE: Does not update the allowance if the current allowance
     * is the maximum `uint256`.
     *
     * Requirements:
     *
     * - `from` and `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     * - the caller must have allowance for ``from``'s tokens of at least
     * `amount`.
     */
    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `from` to `to`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     */
    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
            // Overflow not possible: amount <= accountBalance <= totalSupply.
            _totalSupply -= amount;
        }

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    /**
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
     *
     * Does not update the allowance amount in case of infinite allowance.
     * Revert if not enough allowance is available.
     *
     * Might emit an {Approval} event.
     */
    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}

    /**
     * @dev Hook that is called after any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * has been transferred to `to`.
     * - when `from` is zero, `amount` tokens have been minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)

pragma solidity ^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 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) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)

pragma solidity ^0.8.0;

import "../IERC20.sol";

/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);
}

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    /**
     * @dev Returns the 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 `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount) external returns (bool);
}

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "remappings": []
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_bridge","type":"address"},{"internalType":"address","name":"_remoteToken","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"BRIDGE","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REMOTE_TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bridge","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"l1Token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"l2Bridge","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"remoteToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"_interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]

60e06040523480156200001157600080fd5b50604051620025e7380380620025e7833981810160405281019062000037919062000320565b828281600390816200004a919062000631565b5080600490816200005c919062000631565b5050508373ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508060ff1660c08160ff1681525050505050505062000718565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200012182620000f4565b9050919050565b620001338162000114565b81146200013f57600080fd5b50565b600081519050620001538162000128565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620001ae8262000163565b810181811067ffffffffffffffff82111715620001d057620001cf62000174565b5b80604052505050565b6000620001e5620000e0565b9050620001f38282620001a3565b919050565b600067ffffffffffffffff82111562000216576200021562000174565b5b620002218262000163565b9050602081019050919050565b60005b838110156200024e57808201518184015260208101905062000231565b838111156200025e576000848401525b50505050565b60006200027b6200027584620001f8565b620001d9565b9050828152602081018484840111156200029a57620002996200015e565b5b620002a78482856200022e565b509392505050565b600082601f830112620002c757620002c662000159565b5b8151620002d984826020860162000264565b91505092915050565b600060ff82169050919050565b620002fa81620002e2565b81146200030657600080fd5b50565b6000815190506200031a81620002ef565b92915050565b600080600080600060a086880312156200033f576200033e620000ea565b5b60006200034f8882890162000142565b9550506020620003628882890162000142565b945050604086015167ffffffffffffffff811115620003865762000385620000ef565b5b6200039488828901620002af565b935050606086015167ffffffffffffffff811115620003b857620003b7620000ef565b5b620003c688828901620002af565b9250506080620003d98882890162000309565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200043957607f821691505b6020821081036200044f576200044e620003f1565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620004b97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200047a565b620004c586836200047a565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620005126200050c6200050684620004dd565b620004e7565b620004dd565b9050919050565b6000819050919050565b6200052e83620004f1565b620005466200053d8262000519565b84845462000487565b825550505050565b600090565b6200055d6200054e565b6200056a81848462000523565b505050565b5b8181101562000592576200058660008262000553565b60018101905062000570565b5050565b601f821115620005e157620005ab8162000455565b620005b6846200046a565b81016020851015620005c6578190505b620005de620005d5856200046a565b8301826200056f565b50505b505050565b600082821c905092915050565b60006200060660001984600802620005e6565b1980831691505092915050565b6000620006218383620005f3565b9150826002028217905092915050565b6200063c82620003e6565b67ffffffffffffffff81111562000658576200065762000174565b5b62000664825462000420565b6200067182828562000596565b600060209050601f831160018114620006a9576000841562000694578287015190505b620006a0858262000613565b86555062000710565b601f198416620006b98662000455565b60005b82811015620006e357848901518255600182019150602085019450602081019050620006bc565b86831015620007035784890151620006ff601f891682620005f3565b8355505b6001600288020188555050505b505050505050565b60805160a05160c051611e7562000772600039600061069f0152600081816106fc015281816108f901528181610a7f01528181610b7e0152610ba401526000818161058b01528181610aa70152610acf0152611e756000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806370a08231116100b8578063ae1f6aaf1161007c578063ae1f6aaf14610378578063c01e1bd614610396578063d6c0b2c4146103b4578063dd62ed3e146103d2578063e78cea9214610402578063ee9a31a21461042057610137565b806370a08231146102ae57806395d89b41146102de5780639dc29fac146102fc578063a457c2d714610318578063a9059cbb1461034857610137565b806323b872dd116100ff57806323b872dd146101f6578063313ce56714610226578063395093511461024457806340c10f191461027457806354fd4d501461029057610137565b806301ffc9a71461013c578063033964be1461016c57806306fdde031461018a578063095ea7b3146101a857806318160ddd146101d8575b600080fd5b61015660048036038101906101519190611423565b61043e565b604051610163919061146b565b60405180910390f35b610174610589565b60405161018191906114c7565b60405180910390f35b6101926105ad565b60405161019f919061157b565b60405180910390f35b6101c260048036038101906101bd91906115ff565b61063f565b6040516101cf919061146b565b60405180910390f35b6101e0610662565b6040516101ed919061164e565b60405180910390f35b610210600480360381019061020b9190611669565b61066c565b60405161021d919061146b565b60405180910390f35b61022e61069b565b60405161023b91906116d8565b60405180910390f35b61025e600480360381019061025991906115ff565b6106c3565b60405161026b919061146b565b60405180910390f35b61028e600480360381019061028991906115ff565b6106fa565b005b6102986107e4565b6040516102a5919061157b565b60405180910390f35b6102c860048036038101906102c391906116f3565b61081d565b6040516102d5919061164e565b60405180910390f35b6102e6610865565b6040516102f3919061157b565b60405180910390f35b610316600480360381019061031191906115ff565b6108f7565b005b610332600480360381019061032d91906115ff565b6109e1565b60405161033f919061146b565b60405180910390f35b610362600480360381019061035d91906115ff565b610a58565b60405161036f919061146b565b60405180910390f35b610380610a7b565b60405161038d91906114c7565b60405180910390f35b61039e610aa3565b6040516103ab91906114c7565b60405180910390f35b6103bc610acb565b6040516103c991906114c7565b60405180910390f35b6103ec60048036038101906103e79190611720565b610af3565b6040516103f9919061164e565b60405180910390f35b61040a610b7a565b60405161041791906114c7565b60405180910390f35b610428610ba2565b60405161043591906114c7565b60405180910390f35b6000807f01ffc9a700000000000000000000000000000000000000000000000000000000905060007f1d1d8b6300000000000000000000000000000000000000000000000000000000905060007fec4fc8e3000000000000000000000000000000000000000000000000000000009050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806105375750817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061057f5750807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9350505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600380546105bc9061178f565b80601f01602080910402602001604051908101604052809291908181526020018280546105e89061178f565b80156106355780601f1061060a57610100808354040283529160200191610635565b820191906000526020600020905b81548152906001019060200180831161061857829003601f168201915b5050505050905090565b60008061064a610bc6565b9050610657818585610bce565b600191505092915050565b6000600254905090565b600080610677610bc6565b9050610684858285610d97565b61068f858585610e23565b60019150509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000806106ce610bc6565b90506106ef8185856106e08589610af3565b6106ea91906117ef565b610bce565b600191505092915050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610788576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077f906118b7565b60405180910390fd5b6107928282611099565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040516107d8919061164e565b60405180910390a25050565b6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546108749061178f565b80601f01602080910402602001604051908101604052809291908181526020018280546108a09061178f565b80156108ed5780601f106108c2576101008083540402835291602001916108ed565b820191906000526020600020905b8154815290600101906020018083116108d057829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610985576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097c906118b7565b60405180910390fd5b61098f82826111ef565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040516109d5919061164e565b60405180910390a25050565b6000806109ec610bc6565b905060006109fa8286610af3565b905083811015610a3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3690611949565b60405180910390fd5b610a4c8286868403610bce565b60019250505092915050565b600080610a63610bc6565b9050610a70818585610e23565b600191505092915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c34906119db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca390611a6d565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d8a919061164e565b60405180910390a3505050565b6000610da38484610af3565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e1d5781811015610e0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0690611ad9565b60405180910390fd5b610e1c8484848403610bce565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8990611b6b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef890611bfd565b60405180910390fd5b610f0c8383836113bc565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610f92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8990611c8f565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611080919061164e565b60405180910390a36110938484846113c1565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff90611cfb565b60405180910390fd5b611114600083836113bc565b806002600082825461112691906117ef565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111d7919061164e565b60405180910390a36111eb600083836113c1565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361125e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125590611d8d565b60405180910390fd5b61126a826000836113bc565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e790611e1f565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113a3919061164e565b60405180910390a36113b7836000846113c1565b505050565b505050565b505050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611400816113cb565b811461140b57600080fd5b50565b60008135905061141d816113f7565b92915050565b600060208284031215611439576114386113c6565b5b60006114478482850161140e565b91505092915050565b60008115159050919050565b61146581611450565b82525050565b6000602082019050611480600083018461145c565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006114b182611486565b9050919050565b6114c1816114a6565b82525050565b60006020820190506114dc60008301846114b8565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561151c578082015181840152602081019050611501565b8381111561152b576000848401525b50505050565b6000601f19601f8301169050919050565b600061154d826114e2565b61155781856114ed565b93506115678185602086016114fe565b61157081611531565b840191505092915050565b600060208201905081810360008301526115958184611542565b905092915050565b6115a6816114a6565b81146115b157600080fd5b50565b6000813590506115c38161159d565b92915050565b6000819050919050565b6115dc816115c9565b81146115e757600080fd5b50565b6000813590506115f9816115d3565b92915050565b60008060408385031215611616576116156113c6565b5b6000611624858286016115b4565b9250506020611635858286016115ea565b9150509250929050565b611648816115c9565b82525050565b6000602082019050611663600083018461163f565b92915050565b600080600060608486031215611682576116816113c6565b5b6000611690868287016115b4565b93505060206116a1868287016115b4565b92505060406116b2868287016115ea565b9150509250925092565b600060ff82169050919050565b6116d2816116bc565b82525050565b60006020820190506116ed60008301846116c9565b92915050565b600060208284031215611709576117086113c6565b5b6000611717848285016115b4565b91505092915050565b60008060408385031215611737576117366113c6565b5b6000611745858286016115b4565b9250506020611756858286016115b4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806117a757607f821691505b6020821081036117ba576117b9611760565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006117fa826115c9565b9150611805836115c9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561183a576118396117c0565b5b828201905092915050565b7f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460008201527f67652063616e206d696e7420616e64206275726e000000000000000000000000602082015250565b60006118a16034836114ed565b91506118ac82611845565b604082019050919050565b600060208201905081810360008301526118d081611894565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006119336025836114ed565b915061193e826118d7565b604082019050919050565b6000602082019050818103600083015261196281611926565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006119c56024836114ed565b91506119d082611969565b604082019050919050565b600060208201905081810360008301526119f4816119b8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611a576022836114ed565b9150611a62826119fb565b604082019050919050565b60006020820190508181036000830152611a8681611a4a565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611ac3601d836114ed565b9150611ace82611a8d565b602082019050919050565b60006020820190508181036000830152611af281611ab6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611b556025836114ed565b9150611b6082611af9565b604082019050919050565b60006020820190508181036000830152611b8481611b48565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611be76023836114ed565b9150611bf282611b8b565b604082019050919050565b60006020820190508181036000830152611c1681611bda565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611c796026836114ed565b9150611c8482611c1d565b604082019050919050565b60006020820190508181036000830152611ca881611c6c565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000611ce5601f836114ed565b9150611cf082611caf565b602082019050919050565b60006020820190508181036000830152611d1481611cd8565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d776021836114ed565b9150611d8282611d1b565b604082019050919050565b60006020820190508181036000830152611da681611d6a565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e096022836114ed565b9150611e1482611dad565b604082019050919050565b60006020820190508181036000830152611e3881611dfc565b905091905056fea2646970667358221220c68bfcb1f82ab3c63da9749083ebe4ca86cc80cdad094d7743ca20a90d9c903364736f6c634300080f0033000000000000000000000000420000000000000000000000000000000000001000000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000d416d626972652057616c6c657400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000657414c4c45540000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c806370a08231116100b8578063ae1f6aaf1161007c578063ae1f6aaf14610378578063c01e1bd614610396578063d6c0b2c4146103b4578063dd62ed3e146103d2578063e78cea9214610402578063ee9a31a21461042057610137565b806370a08231146102ae57806395d89b41146102de5780639dc29fac146102fc578063a457c2d714610318578063a9059cbb1461034857610137565b806323b872dd116100ff57806323b872dd146101f6578063313ce56714610226578063395093511461024457806340c10f191461027457806354fd4d501461029057610137565b806301ffc9a71461013c578063033964be1461016c57806306fdde031461018a578063095ea7b3146101a857806318160ddd146101d8575b600080fd5b61015660048036038101906101519190611423565b61043e565b604051610163919061146b565b60405180910390f35b610174610589565b60405161018191906114c7565b60405180910390f35b6101926105ad565b60405161019f919061157b565b60405180910390f35b6101c260048036038101906101bd91906115ff565b61063f565b6040516101cf919061146b565b60405180910390f35b6101e0610662565b6040516101ed919061164e565b60405180910390f35b610210600480360381019061020b9190611669565b61066c565b60405161021d919061146b565b60405180910390f35b61022e61069b565b60405161023b91906116d8565b60405180910390f35b61025e600480360381019061025991906115ff565b6106c3565b60405161026b919061146b565b60405180910390f35b61028e600480360381019061028991906115ff565b6106fa565b005b6102986107e4565b6040516102a5919061157b565b60405180910390f35b6102c860048036038101906102c391906116f3565b61081d565b6040516102d5919061164e565b60405180910390f35b6102e6610865565b6040516102f3919061157b565b60405180910390f35b610316600480360381019061031191906115ff565b6108f7565b005b610332600480360381019061032d91906115ff565b6109e1565b60405161033f919061146b565b60405180910390f35b610362600480360381019061035d91906115ff565b610a58565b60405161036f919061146b565b60405180910390f35b610380610a7b565b60405161038d91906114c7565b60405180910390f35b61039e610aa3565b6040516103ab91906114c7565b60405180910390f35b6103bc610acb565b6040516103c991906114c7565b60405180910390f35b6103ec60048036038101906103e79190611720565b610af3565b6040516103f9919061164e565b60405180910390f35b61040a610b7a565b60405161041791906114c7565b60405180910390f35b610428610ba2565b60405161043591906114c7565b60405180910390f35b6000807f01ffc9a700000000000000000000000000000000000000000000000000000000905060007f1d1d8b6300000000000000000000000000000000000000000000000000000000905060007fec4fc8e3000000000000000000000000000000000000000000000000000000009050827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806105375750817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061057f5750807bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916857bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9350505050919050565b7f00000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae81565b6060600380546105bc9061178f565b80601f01602080910402602001604051908101604052809291908181526020018280546105e89061178f565b80156106355780601f1061060a57610100808354040283529160200191610635565b820191906000526020600020905b81548152906001019060200180831161061857829003601f168201915b5050505050905090565b60008061064a610bc6565b9050610657818585610bce565b600191505092915050565b6000600254905090565b600080610677610bc6565b9050610684858285610d97565b61068f858585610e23565b60019150509392505050565b60007f0000000000000000000000000000000000000000000000000000000000000012905090565b6000806106ce610bc6565b90506106ef8185856106e08589610af3565b6106ea91906117ef565b610bce565b600191505092915050565b7f000000000000000000000000420000000000000000000000000000000000001073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610788576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077f906118b7565b60405180910390fd5b6107928282611099565b8173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040516107d8919061164e565b60405180910390a25050565b6040518060400160405280600581526020017f312e332e3000000000000000000000000000000000000000000000000000000081525081565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600480546108749061178f565b80601f01602080910402602001604051908101604052809291908181526020018280546108a09061178f565b80156108ed5780601f106108c2576101008083540402835291602001916108ed565b820191906000526020600020905b8154815290600101906020018083116108d057829003601f168201915b5050505050905090565b7f000000000000000000000000420000000000000000000000000000000000001073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610985576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097c906118b7565b60405180910390fd5b61098f82826111ef565b8173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040516109d5919061164e565b60405180910390a25050565b6000806109ec610bc6565b905060006109fa8286610af3565b905083811015610a3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3690611949565b60405180910390fd5b610a4c8286868403610bce565b60019250505092915050565b600080610a63610bc6565b9050610a70818585610e23565b600191505092915050565b60007f0000000000000000000000004200000000000000000000000000000000000010905090565b60007f00000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae905090565b60007f00000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae905090565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60007f0000000000000000000000004200000000000000000000000000000000000010905090565b7f000000000000000000000000420000000000000000000000000000000000001081565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c34906119db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca390611a6d565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d8a919061164e565b60405180910390a3505050565b6000610da38484610af3565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e1d5781811015610e0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0690611ad9565b60405180910390fd5b610e1c8484848403610bce565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8990611b6b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f01576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ef890611bfd565b60405180910390fd5b610f0c8383836113bc565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610f92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8990611c8f565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611080919061164e565b60405180910390a36110938484846113c1565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff90611cfb565b60405180910390fd5b611114600083836113bc565b806002600082825461112691906117ef565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516111d7919061164e565b60405180910390a36111eb600083836113c1565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361125e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125590611d8d565b60405180910390fd5b61126a826000836113bc565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e790611e1f565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113a3919061164e565b60405180910390a36113b7836000846113c1565b505050565b505050565b505050565b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611400816113cb565b811461140b57600080fd5b50565b60008135905061141d816113f7565b92915050565b600060208284031215611439576114386113c6565b5b60006114478482850161140e565b91505092915050565b60008115159050919050565b61146581611450565b82525050565b6000602082019050611480600083018461145c565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006114b182611486565b9050919050565b6114c1816114a6565b82525050565b60006020820190506114dc60008301846114b8565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561151c578082015181840152602081019050611501565b8381111561152b576000848401525b50505050565b6000601f19601f8301169050919050565b600061154d826114e2565b61155781856114ed565b93506115678185602086016114fe565b61157081611531565b840191505092915050565b600060208201905081810360008301526115958184611542565b905092915050565b6115a6816114a6565b81146115b157600080fd5b50565b6000813590506115c38161159d565b92915050565b6000819050919050565b6115dc816115c9565b81146115e757600080fd5b50565b6000813590506115f9816115d3565b92915050565b60008060408385031215611616576116156113c6565b5b6000611624858286016115b4565b9250506020611635858286016115ea565b9150509250929050565b611648816115c9565b82525050565b6000602082019050611663600083018461163f565b92915050565b600080600060608486031215611682576116816113c6565b5b6000611690868287016115b4565b93505060206116a1868287016115b4565b92505060406116b2868287016115ea565b9150509250925092565b600060ff82169050919050565b6116d2816116bc565b82525050565b60006020820190506116ed60008301846116c9565b92915050565b600060208284031215611709576117086113c6565b5b6000611717848285016115b4565b91505092915050565b60008060408385031215611737576117366113c6565b5b6000611745858286016115b4565b9250506020611756858286016115b4565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806117a757607f821691505b6020821081036117ba576117b9611760565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006117fa826115c9565b9150611805836115c9565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561183a576118396117c0565b5b828201905092915050565b7f4f7074696d69736d4d696e7461626c6545524332303a206f6e6c79206272696460008201527f67652063616e206d696e7420616e64206275726e000000000000000000000000602082015250565b60006118a16034836114ed565b91506118ac82611845565b604082019050919050565b600060208201905081810360008301526118d081611894565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006119336025836114ed565b915061193e826118d7565b604082019050919050565b6000602082019050818103600083015261196281611926565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006119c56024836114ed565b91506119d082611969565b604082019050919050565b600060208201905081810360008301526119f4816119b8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000611a576022836114ed565b9150611a62826119fb565b604082019050919050565b60006020820190508181036000830152611a8681611a4a565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000611ac3601d836114ed565b9150611ace82611a8d565b602082019050919050565b60006020820190508181036000830152611af281611ab6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000611b556025836114ed565b9150611b6082611af9565b604082019050919050565b60006020820190508181036000830152611b8481611b48565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611be76023836114ed565b9150611bf282611b8b565b604082019050919050565b60006020820190508181036000830152611c1681611bda565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611c796026836114ed565b9150611c8482611c1d565b604082019050919050565b60006020820190508181036000830152611ca881611c6c565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000611ce5601f836114ed565b9150611cf082611caf565b602082019050919050565b60006020820190508181036000830152611d1481611cd8565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000611d776021836114ed565b9150611d8282611d1b565b604082019050919050565b60006020820190508181036000830152611da681611d6a565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e096022836114ed565b9150611e1482611dad565b604082019050919050565b60006020820190508181036000830152611e3881611dfc565b905091905056fea2646970667358221220c68bfcb1f82ab3c63da9749083ebe4ca86cc80cdad094d7743ca20a90d9c903364736f6c634300080f0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000420000000000000000000000000000000000001000000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000d416d626972652057616c6c657400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000657414c4c45540000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _bridge (address): 0x4200000000000000000000000000000000000010
Arg [1] : _remoteToken (address): 0x88800092fF476844f74dC2FC427974BBee2794Ae
Arg [2] : _name (string): Ambire Wallet
Arg [3] : _symbol (string): WALLET
Arg [4] : _decimals (uint8): 18

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 0000000000000000000000004200000000000000000000000000000000000010
Arg [1] : 00000000000000000000000088800092ff476844f74dc2fc427974bbee2794ae
Arg [2] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [3] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000d
Arg [6] : 416d626972652057616c6c657400000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [8] : 57414c4c45540000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

809:4510:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3592:519;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;998:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2158:98:0;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4444:197;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3255:106;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5203:256;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5228:89:7;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5854:234:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2715:254:7;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1985:40;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3419:125:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2369:102;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3150:260:7;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6575:427:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3740:189;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4410:80:7;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4224:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4567:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3987:149:0;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4727:78:7;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1105:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3592:519;3671:4;3687:13;3703:25;3687:41;;3804:13;3820:38;3804:54;;3957:13;3973:40;3957:56;;4046:6;4030:22;;;:12;:22;;;;:48;;;;4072:6;4056:22;;;:12;:22;;;;4030:48;:74;;;;4098:6;4082:22;;;:12;:22;;;;4030:74;4023:81;;;;;3592:519;;;:::o;998:37::-;;;:::o;2158:98:0:-;2212:13;2244:5;2237:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2158:98;:::o;4444:197::-;4527:4;4543:13;4559:12;:10;:12::i;:::-;4543:28;;4581:32;4590:5;4597:7;4606:6;4581:8;:32::i;:::-;4630:4;4623:11;;;4444:197;;;;:::o;3255:106::-;3316:7;3342:12;;3335:19;;3255:106;:::o;5203:256::-;5300:4;5316:15;5334:12;:10;:12::i;:::-;5316:30;;5356:38;5372:4;5378:7;5387:6;5356:15;:38::i;:::-;5404:27;5414:4;5420:2;5424:6;5404:9;:27::i;:::-;5448:4;5441:11;;;5203:256;;;;;:::o;5228:89:7:-;5278:5;5302:8;5295:15;;5228:89;:::o;5854:234:0:-;5942:4;5958:13;5974:12;:10;:12::i;:::-;5958:28;;5996:64;6005:5;6012:7;6049:10;6021:25;6031:5;6038:7;6021:9;:25::i;:::-;:38;;;;:::i;:::-;5996:8;:64::i;:::-;6077:4;6070:11;;;5854:234;;;;:::o;2715:254:7:-;1835:6;1821:20;;:10;:20;;;1813:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;2910:19:::1;2916:3;2921:7;2910:5;:19::i;:::-;2949:3;2944:18;;;2954:7;2944:18;;;;;;:::i;:::-;;;;;;;;2715:254:::0;;:::o;1985:40::-;;;;;;;;;;;;;;;;;;;:::o;3419:125:0:-;3493:7;3519:9;:18;3529:7;3519:18;;;;;;;;;;;;;;;;3512:25;;3419:125;;;:::o;2369:102::-;2425:13;2457:7;2450:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2369:102;:::o;3150:260:7:-;1835:6;1821:20;;:10;:20;;;1813:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;3347:21:::1;3353:5;3360:7;3347:5;:21::i;:::-;3388:5;3383:20;;;3395:7;3383:20;;;;;;:::i;:::-;;;;;;;;3150:260:::0;;:::o;6575:427:0:-;6668:4;6684:13;6700:12;:10;:12::i;:::-;6684:28;;6722:24;6749:25;6759:5;6766:7;6749:9;:25::i;:::-;6722:52;;6812:15;6792:16;:35;;6784:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;6903:60;6912:5;6919:7;6947:15;6928:16;:34;6903:8;:60::i;:::-;6991:4;6984:11;;;;6575:427;;;;:::o;3740:189::-;3819:4;3835:13;3851:12;:10;:12::i;:::-;3835:28;;3873;3883:5;3890:2;3894:6;3873:9;:28::i;:::-;3918:4;3911:11;;;3740:189;;;;:::o;4410:80:7:-;4451:7;4477:6;4470:13;;4410:80;:::o;4224:85::-;4264:7;4290:12;4283:19;;4224:85;:::o;4567:89::-;4611:7;4637:12;4630:19;;4567:89;:::o;3987:149:0:-;4076:7;4102:11;:18;4114:5;4102:18;;;;;;;;;;;;;;;:27;4121:7;4102:27;;;;;;;;;;;;;;;;4095:34;;3987:149;;;;:::o;4727:78:7:-;4766:7;4792:6;4785:13;;4727:78;:::o;1105:31::-;;;:::o;640:96:3:-;693:7;719:10;712:17;;640:96;:::o;10457:340:0:-;10575:1;10558:19;;:5;:19;;;10550:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10655:1;10636:21;;:7;:21;;;10628:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10737:6;10707:11;:18;10719:5;10707:18;;;;;;;;;;;;;;;:27;10726:7;10707:27;;;;;;;;;;;;;;;:36;;;;10774:7;10758:32;;10767:5;10758:32;;;10783:6;10758:32;;;;;;:::i;:::-;;;;;;;;10457:340;;;:::o;11078:411::-;11178:24;11205:25;11215:5;11222:7;11205:9;:25::i;:::-;11178:52;;11264:17;11244:16;:37;11240:243;;11325:6;11305:16;:26;;11297:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11407:51;11416:5;11423:7;11451:6;11432:16;:25;11407:8;:51::i;:::-;11240:243;11168:321;11078:411;;;:::o;7456:788::-;7568:1;7552:18;;:4;:18;;;7544:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7644:1;7630:16;;:2;:16;;;7622:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7697:38;7718:4;7724:2;7728:6;7697:20;:38::i;:::-;7746:19;7768:9;:15;7778:4;7768:15;;;;;;;;;;;;;;;;7746:37;;7816:6;7801:11;:21;;7793:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;7931:6;7917:11;:20;7899:9;:15;7909:4;7899:15;;;;;;;;;;;;;;;:38;;;;8131:6;8114:9;:13;8124:2;8114:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;8178:2;8163:26;;8172:4;8163:26;;;8182:6;8163:26;;;;;;:::i;:::-;;;;;;;;8200:37;8220:4;8226:2;8230:6;8200:19;:37::i;:::-;7534:710;7456:788;;;:::o;8520:535::-;8622:1;8603:21;;:7;:21;;;8595:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;8671:49;8700:1;8704:7;8713:6;8671:20;:49::i;:::-;8747:6;8731:12;;:22;;;;;;;:::i;:::-;;;;;;;;8921:6;8899:9;:18;8909:7;8899:18;;;;;;;;;;;;;;;;:28;;;;;;;;;;;8973:7;8952:37;;8969:1;8952:37;;;8982:6;8952:37;;;;;;:::i;:::-;;;;;;;;9000:48;9028:1;9032:7;9041:6;9000:19;:48::i;:::-;8520:535;;:::o;9375:659::-;9477:1;9458:21;;:7;:21;;;9450:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;9528:49;9549:7;9566:1;9570:6;9528:20;:49::i;:::-;9588:22;9613:9;:18;9623:7;9613:18;;;;;;;;;;;;;;;;9588:43;;9667:6;9649:14;:24;;9641:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9784:6;9767:14;:23;9746:9;:18;9756:7;9746:18;;;;;;;;;;;;;;;:44;;;;9899:6;9883:12;;:22;;;;;;;;;;;9957:1;9931:37;;9940:7;9931:37;;;9961:6;9931:37;;;;;;:::i;:::-;;;;;;;;9979:48;9999:7;10016:1;10020:6;9979:19;:48::i;:::-;9440:594;9375:659;;:::o;12073:91::-;;;;:::o;12752:90::-;;;;:::o;88:117:8:-;197:1;194;187:12;334:149;370:7;410:66;403:5;399:78;388:89;;334:149;;;:::o;489:120::-;561:23;578:5;561:23;:::i;:::-;554:5;551:34;541:62;;599:1;596;589:12;541:62;489:120;:::o;615:137::-;660:5;698:6;685:20;676:29;;714:32;740:5;714:32;:::i;:::-;615:137;;;;:::o;758:327::-;816:6;865:2;853:9;844:7;840:23;836:32;833:119;;;871:79;;:::i;:::-;833:119;991:1;1016:52;1060:7;1051:6;1040:9;1036:22;1016:52;:::i;:::-;1006:62;;962:116;758:327;;;;:::o;1091:90::-;1125:7;1168:5;1161:13;1154:21;1143:32;;1091:90;;;:::o;1187:109::-;1268:21;1283:5;1268:21;:::i;:::-;1263:3;1256:34;1187:109;;:::o;1302:210::-;1389:4;1427:2;1416:9;1412:18;1404:26;;1440:65;1502:1;1491:9;1487:17;1478:6;1440:65;:::i;:::-;1302:210;;;;:::o;1518:126::-;1555:7;1595:42;1588:5;1584:54;1573:65;;1518:126;;;:::o;1650:96::-;1687:7;1716:24;1734:5;1716:24;:::i;:::-;1705:35;;1650:96;;;:::o;1752:118::-;1839:24;1857:5;1839:24;:::i;:::-;1834:3;1827:37;1752:118;;:::o;1876:222::-;1969:4;2007:2;1996:9;1992:18;1984:26;;2020:71;2088:1;2077:9;2073:17;2064:6;2020:71;:::i;:::-;1876:222;;;;:::o;2104:99::-;2156:6;2190:5;2184:12;2174:22;;2104:99;;;:::o;2209:169::-;2293:11;2327:6;2322:3;2315:19;2367:4;2362:3;2358:14;2343:29;;2209:169;;;;:::o;2384:307::-;2452:1;2462:113;2476:6;2473:1;2470:13;2462:113;;;2561:1;2556:3;2552:11;2546:18;2542:1;2537:3;2533:11;2526:39;2498:2;2495:1;2491:10;2486:15;;2462:113;;;2593:6;2590:1;2587:13;2584:101;;;2673:1;2664:6;2659:3;2655:16;2648:27;2584:101;2433:258;2384:307;;;:::o;2697:102::-;2738:6;2789:2;2785:7;2780:2;2773:5;2769:14;2765:28;2755:38;;2697:102;;;:::o;2805:364::-;2893:3;2921:39;2954:5;2921:39;:::i;:::-;2976:71;3040:6;3035:3;2976:71;:::i;:::-;2969:78;;3056:52;3101:6;3096:3;3089:4;3082:5;3078:16;3056:52;:::i;:::-;3133:29;3155:6;3133:29;:::i;:::-;3128:3;3124:39;3117:46;;2897:272;2805:364;;;;:::o;3175:313::-;3288:4;3326:2;3315:9;3311:18;3303:26;;3375:9;3369:4;3365:20;3361:1;3350:9;3346:17;3339:47;3403:78;3476:4;3467:6;3403:78;:::i;:::-;3395:86;;3175:313;;;;:::o;3494:122::-;3567:24;3585:5;3567:24;:::i;:::-;3560:5;3557:35;3547:63;;3606:1;3603;3596:12;3547:63;3494:122;:::o;3622:139::-;3668:5;3706:6;3693:20;3684:29;;3722:33;3749:5;3722:33;:::i;:::-;3622:139;;;;:::o;3767:77::-;3804:7;3833:5;3822:16;;3767:77;;;:::o;3850:122::-;3923:24;3941:5;3923:24;:::i;:::-;3916:5;3913:35;3903:63;;3962:1;3959;3952:12;3903:63;3850:122;:::o;3978:139::-;4024:5;4062:6;4049:20;4040:29;;4078:33;4105:5;4078:33;:::i;:::-;3978:139;;;;:::o;4123:474::-;4191:6;4199;4248:2;4236:9;4227:7;4223:23;4219:32;4216:119;;;4254:79;;:::i;:::-;4216:119;4374:1;4399:53;4444:7;4435:6;4424:9;4420:22;4399:53;:::i;:::-;4389:63;;4345:117;4501:2;4527:53;4572:7;4563:6;4552:9;4548:22;4527:53;:::i;:::-;4517:63;;4472:118;4123:474;;;;;:::o;4603:118::-;4690:24;4708:5;4690:24;:::i;:::-;4685:3;4678:37;4603:118;;:::o;4727:222::-;4820:4;4858:2;4847:9;4843:18;4835:26;;4871:71;4939:1;4928:9;4924:17;4915:6;4871:71;:::i;:::-;4727:222;;;;:::o;4955:619::-;5032:6;5040;5048;5097:2;5085:9;5076:7;5072:23;5068:32;5065:119;;;5103:79;;:::i;:::-;5065:119;5223:1;5248:53;5293:7;5284:6;5273:9;5269:22;5248:53;:::i;:::-;5238:63;;5194:117;5350:2;5376:53;5421:7;5412:6;5401:9;5397:22;5376:53;:::i;:::-;5366:63;;5321:118;5478:2;5504:53;5549:7;5540:6;5529:9;5525:22;5504:53;:::i;:::-;5494:63;;5449:118;4955:619;;;;;:::o;5580:86::-;5615:7;5655:4;5648:5;5644:16;5633:27;;5580:86;;;:::o;5672:112::-;5755:22;5771:5;5755:22;:::i;:::-;5750:3;5743:35;5672:112;;:::o;5790:214::-;5879:4;5917:2;5906:9;5902:18;5894:26;;5930:67;5994:1;5983:9;5979:17;5970:6;5930:67;:::i;:::-;5790:214;;;;:::o;6010:329::-;6069:6;6118:2;6106:9;6097:7;6093:23;6089:32;6086:119;;;6124:79;;:::i;:::-;6086:119;6244:1;6269:53;6314:7;6305:6;6294:9;6290:22;6269:53;:::i;:::-;6259:63;;6215:117;6010:329;;;;:::o;6345:474::-;6413:6;6421;6470:2;6458:9;6449:7;6445:23;6441:32;6438:119;;;6476:79;;:::i;:::-;6438:119;6596:1;6621:53;6666:7;6657:6;6646:9;6642:22;6621:53;:::i;:::-;6611:63;;6567:117;6723:2;6749:53;6794:7;6785:6;6774:9;6770:22;6749:53;:::i;:::-;6739:63;;6694:118;6345:474;;;;;:::o;6825:180::-;6873:77;6870:1;6863:88;6970:4;6967:1;6960:15;6994:4;6991:1;6984:15;7011:320;7055:6;7092:1;7086:4;7082:12;7072:22;;7139:1;7133:4;7129:12;7160:18;7150:81;;7216:4;7208:6;7204:17;7194:27;;7150:81;7278:2;7270:6;7267:14;7247:18;7244:38;7241:84;;7297:18;;:::i;:::-;7241:84;7062:269;7011:320;;;:::o;7337:180::-;7385:77;7382:1;7375:88;7482:4;7479:1;7472:15;7506:4;7503:1;7496:15;7523:305;7563:3;7582:20;7600:1;7582:20;:::i;:::-;7577:25;;7616:20;7634:1;7616:20;:::i;:::-;7611:25;;7770:1;7702:66;7698:74;7695:1;7692:81;7689:107;;;7776:18;;:::i;:::-;7689:107;7820:1;7817;7813:9;7806:16;;7523:305;;;;:::o;7834:239::-;7974:34;7970:1;7962:6;7958:14;7951:58;8043:22;8038:2;8030:6;8026:15;8019:47;7834:239;:::o;8079:366::-;8221:3;8242:67;8306:2;8301:3;8242:67;:::i;:::-;8235:74;;8318:93;8407:3;8318:93;:::i;:::-;8436:2;8431:3;8427:12;8420:19;;8079:366;;;:::o;8451:419::-;8617:4;8655:2;8644:9;8640:18;8632:26;;8704:9;8698:4;8694:20;8690:1;8679:9;8675:17;8668:47;8732:131;8858:4;8732:131;:::i;:::-;8724:139;;8451:419;;;:::o;8876:224::-;9016:34;9012:1;9004:6;9000:14;8993:58;9085:7;9080:2;9072:6;9068:15;9061:32;8876:224;:::o;9106:366::-;9248:3;9269:67;9333:2;9328:3;9269:67;:::i;:::-;9262:74;;9345:93;9434:3;9345:93;:::i;:::-;9463:2;9458:3;9454:12;9447:19;;9106:366;;;:::o;9478:419::-;9644:4;9682:2;9671:9;9667:18;9659:26;;9731:9;9725:4;9721:20;9717:1;9706:9;9702:17;9695:47;9759:131;9885:4;9759:131;:::i;:::-;9751:139;;9478:419;;;:::o;9903:223::-;10043:34;10039:1;10031:6;10027:14;10020:58;10112:6;10107:2;10099:6;10095:15;10088:31;9903:223;:::o;10132:366::-;10274:3;10295:67;10359:2;10354:3;10295:67;:::i;:::-;10288:74;;10371:93;10460:3;10371:93;:::i;:::-;10489:2;10484:3;10480:12;10473:19;;10132:366;;;:::o;10504:419::-;10670:4;10708:2;10697:9;10693:18;10685:26;;10757:9;10751:4;10747:20;10743:1;10732:9;10728:17;10721:47;10785:131;10911:4;10785:131;:::i;:::-;10777:139;;10504:419;;;:::o;10929:221::-;11069:34;11065:1;11057:6;11053:14;11046:58;11138:4;11133:2;11125:6;11121:15;11114:29;10929:221;:::o;11156:366::-;11298:3;11319:67;11383:2;11378:3;11319:67;:::i;:::-;11312:74;;11395:93;11484:3;11395:93;:::i;:::-;11513:2;11508:3;11504:12;11497:19;;11156:366;;;:::o;11528:419::-;11694:4;11732:2;11721:9;11717:18;11709:26;;11781:9;11775:4;11771:20;11767:1;11756:9;11752:17;11745:47;11809:131;11935:4;11809:131;:::i;:::-;11801:139;;11528:419;;;:::o;11953:179::-;12093:31;12089:1;12081:6;12077:14;12070:55;11953:179;:::o;12138:366::-;12280:3;12301:67;12365:2;12360:3;12301:67;:::i;:::-;12294:74;;12377:93;12466:3;12377:93;:::i;:::-;12495:2;12490:3;12486:12;12479:19;;12138:366;;;:::o;12510:419::-;12676:4;12714:2;12703:9;12699:18;12691:26;;12763:9;12757:4;12753:20;12749:1;12738:9;12734:17;12727:47;12791:131;12917:4;12791:131;:::i;:::-;12783:139;;12510:419;;;:::o;12935:224::-;13075:34;13071:1;13063:6;13059:14;13052:58;13144:7;13139:2;13131:6;13127:15;13120:32;12935:224;:::o;13165:366::-;13307:3;13328:67;13392:2;13387:3;13328:67;:::i;:::-;13321:74;;13404:93;13493:3;13404:93;:::i;:::-;13522:2;13517:3;13513:12;13506:19;;13165:366;;;:::o;13537:419::-;13703:4;13741:2;13730:9;13726:18;13718:26;;13790:9;13784:4;13780:20;13776:1;13765:9;13761:17;13754:47;13818:131;13944:4;13818:131;:::i;:::-;13810:139;;13537:419;;;:::o;13962:222::-;14102:34;14098:1;14090:6;14086:14;14079:58;14171:5;14166:2;14158:6;14154:15;14147:30;13962:222;:::o;14190:366::-;14332:3;14353:67;14417:2;14412:3;14353:67;:::i;:::-;14346:74;;14429:93;14518:3;14429:93;:::i;:::-;14547:2;14542:3;14538:12;14531:19;;14190:366;;;:::o;14562:419::-;14728:4;14766:2;14755:9;14751:18;14743:26;;14815:9;14809:4;14805:20;14801:1;14790:9;14786:17;14779:47;14843:131;14969:4;14843:131;:::i;:::-;14835:139;;14562:419;;;:::o;14987:225::-;15127:34;15123:1;15115:6;15111:14;15104:58;15196:8;15191:2;15183:6;15179:15;15172:33;14987:225;:::o;15218:366::-;15360:3;15381:67;15445:2;15440:3;15381:67;:::i;:::-;15374:74;;15457:93;15546:3;15457:93;:::i;:::-;15575:2;15570:3;15566:12;15559:19;;15218:366;;;:::o;15590:419::-;15756:4;15794:2;15783:9;15779:18;15771:26;;15843:9;15837:4;15833:20;15829:1;15818:9;15814:17;15807:47;15871:131;15997:4;15871:131;:::i;:::-;15863:139;;15590:419;;;:::o;16015:181::-;16155:33;16151:1;16143:6;16139:14;16132:57;16015:181;:::o;16202:366::-;16344:3;16365:67;16429:2;16424:3;16365:67;:::i;:::-;16358:74;;16441:93;16530:3;16441:93;:::i;:::-;16559:2;16554:3;16550:12;16543:19;;16202:366;;;:::o;16574:419::-;16740:4;16778:2;16767:9;16763:18;16755:26;;16827:9;16821:4;16817:20;16813:1;16802:9;16798:17;16791:47;16855:131;16981:4;16855:131;:::i;:::-;16847:139;;16574:419;;;:::o;16999:220::-;17139:34;17135:1;17127:6;17123:14;17116:58;17208:3;17203:2;17195:6;17191:15;17184:28;16999:220;:::o;17225:366::-;17367:3;17388:67;17452:2;17447:3;17388:67;:::i;:::-;17381:74;;17464:93;17553:3;17464:93;:::i;:::-;17582:2;17577:3;17573:12;17566:19;;17225:366;;;:::o;17597:419::-;17763:4;17801:2;17790:9;17786:18;17778:26;;17850:9;17844:4;17840:20;17836:1;17825:9;17821:17;17814:47;17878:131;18004:4;17878:131;:::i;:::-;17870:139;;17597:419;;;:::o;18022:221::-;18162:34;18158:1;18150:6;18146:14;18139:58;18231:4;18226:2;18218:6;18214:15;18207:29;18022:221;:::o;18249:366::-;18391:3;18412:67;18476:2;18471:3;18412:67;:::i;:::-;18405:74;;18488:93;18577:3;18488:93;:::i;:::-;18606:2;18601:3;18597:12;18590:19;;18249:366;;;:::o;18621:419::-;18787:4;18825:2;18814:9;18810:18;18802:26;;18874:9;18868:4;18864:20;18860:1;18849:9;18845:17;18838:47;18902:131;19028:4;18902:131;:::i;:::-;18894:139;;18621:419;;;:::o

Swarm Source

ipfs://c68bfcb1f82ab3c63da9749083ebe4ca86cc80cdad094d7743ca20a90d9c9033
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.