S Price: $0.585115 (-3.87%)
    /

    Token

    Sacra Gem 1 (SACRA_GEM_1)

    Overview

    Max Total Supply

    600,000 SACRA_GEM_1

    Holders

    71

    Market

    Price

    $0.00 @ 0.000000 S

    Onchain Market Cap

    $0.00

    Circulating Supply Market Cap

    -

    Other Info

    Token Contract (WITH 18 Decimals)

    Balance
    0 SACRA_GEM_1

    Value
    $0.00
    0x6e373d5c4a0ad6523d42981d932587c05f5fa258
    Loading...
    Loading
    Loading...
    Loading
    Loading...
    Loading

    Click here to update the token information / general information

    Contract Source Code Verified (Exact Match)

    Contract Name:
    SacraGem

    Compiler Version
    v0.8.23+commit.f704f362

    Optimization Enabled:
    Yes with 50 runs

    Other Settings:
    istanbul EvmVersion
    File 1 of 17 : SacraGem.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    /**
    ▒▓▒ ▒▒▒▒▒▓▓▓▓▓▓▓▓▓▓▓▓▓▓███▓▓▒ ▒▒▒▒▓▓▓▒▓▓▓▓▓▓▓██▓
    ▒██▒▓▓▓▓█▓██████████████████▓ ▒▒▒▓███████████████▒
    ▒██▒▓█████████████████████▒ ▒▓██████████▓███████
    ▒███████████▓▒ ▒███▓▓██████▓
    █████████▒ ▒▓▒▓███████▒
    ███████▓ ▒▒▒▒▒▓▓█▓▒ ▓█▓████████
    ▒▒▒▒▒ ▒▒▒▒▓▓▓█████▒ ▓█████████▓
    ▒▓▓▓▒▓██████▓ ▒▓▓████████▒
    ▒██▓▓▓███████▒ ▒▒▓███▓████
    ▒███▓█████▒ ▒▒█████▓██▓
    ██████▓ ▒▒▒▓██▓██▓█████▒
    ▒▒▓▓▒ ▒██▓▒▓▓████████
    ▓█████▓███████▓
    ██▓▓██████████▒
    ▒█████████████
    ███████████▓
    ▒▓▓▓▓▓▓▒▓ ▒█████████▒ ▒▓▓
    ▒▓█▒ ▒▒█▒▒ ▓██████ ▒▒▓▓▒
    ▒▒█▒ ▓▒ ▒████ ▒▓█▓█▓▒
    ▓▒██▓▒ ██ ▒▓█▓▓▓██▒
    ▓█▓▓▓▓▓█▓▓▓▒ ▒▒▒ ▒▒▒▓▓▓▓▒▓▒▒▓▒▓▓▓▓▓▓▓▓▒ ▒▓█▒ ▒▓▒▓█▓
    ▒▓█▓▓▓▓▓▓▓▓▓▓▒ ▒▒▒▓▒ ▒▒▒▓▓ ▓▓ ▓▓█▓ ▒▒▓▓ ▒▒█▒ ▒▓▒▓█▓
    ▒▒▓▓▓▒▓▒ ▒▓▓▓▒█▒ ▒▒▒█▒ ▒▒█▓▒▒▒▓▓▓▒ ▓██▓▓▓▓▓▓▓███▓
    ▒ ▒▓▓█▓ ▒▓▓▓▓█▓█▓ ▒█▓▓▒ ▓▓█▓▒▓█▓▒▒ ▓█▓ ▓███▓
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 2 of 17 : IAppErrors.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    /// @notice All errors of the app
    interface IAppErrors {
    //region ERC20Errors
    /**
    * @dev Indicates an error related to the current `balance` of a `sender`. Used in transfers.
    * @param sender Address whose tokens are being transferred.
    * @param balance Current balance for the interacting account.
    * @param needed Minimum amount required to perform a transfer.
    */
    error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed);
    /**
    * @dev Indicates a failure with the token `sender`. Used in transfers.
    * @param sender Address whose tokens are being transferred.
    */
    error ERC20InvalidSender(address sender);
    /**
    * @dev Indicates a failure with the token `receiver`. Used in transfers.
    * @param receiver Address to which tokens are being transferred.
    */
    error ERC20InvalidReceiver(address receiver);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 3 of 17 : IApplicationEvents.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "./IGOC.sol";
    import "./IStatController.sol";
    import "./IDungeonFactory.sol";
    import "./IStoryController.sol";
    import "./IFightCalculator.sol";
    /// @notice All events of the app
    interface IApplicationEvents {
    //region ------------------ StatController
    event HeroItemSlotChanged(
    address heroToken,
    uint heroTokenId,
    uint itemType,
    uint itemSlot,
    address itemToken,
    uint itemTokenId,
    bool equip,
    address caller
    );
    event CurrentStatsChanged(
    address heroToken,
    uint heroTokenId,
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 4 of 17 : IController.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    interface IController {
    function governance() external view returns (address);
    function statController() external view returns (address);
    function storyController() external view returns (address);
    function gameObjectController() external view returns (address);
    function reinforcementController() external view returns (address);
    function oracle() external view returns (address);
    function treasury() external view returns (address);
    function itemController() external view returns (address);
    function heroController() external view returns (address);
    function dungeonFactory() external view returns (address);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 5 of 17 : IDungeonFactory.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "../openzeppelin/EnumerableSet.sol";
    import "../openzeppelin/EnumerableMap.sol";
    interface IDungeonFactory {
    /// @custom:storage-location erc7201:dungeon.factory.main
    struct MainState {
    /// @dev biome => dungeonLaunchedId
    mapping(uint => EnumerableSet.UintSet) freeDungeons;
    /// @dev hero + heroId + biome (packMapObject) -> completed
    mapping(bytes32 => bool) bossCompleted;
    /// @dev hero + heroId + dungNum (packDungeonKey) -> completed
    mapping(bytes32 => bool) specificDungeonCompleted;
    /// @notice Max biome completed by the hero
    /// @dev hero + heroId (nftPacked) -> max biome completed
    mapping(bytes32 => uint8) maxBiomeCompleted;
    /// @notice which dungeon the hero is currently in
    /// @dev hero+id => current DungeonId
    mapping(bytes32 => uint64) heroCurrentDungeon;
    // ---
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 6 of 17 : IERC20.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    pragma solidity ^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);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 7 of 17 : IFightCalculator.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "./IStatController.sol";
    import "./IItemController.sol";
    interface IFightCalculator {
    enum AttackType {
    UNKNOWN, // 0
    MELEE, // 1
    MAGIC, // 2
    SLOT_3,
    SLOT_4,
    SLOT_5,
    SLOT_6,
    SLOT_7,
    SLOT_8,
    SLOT_9,
    SLOT_10
    }
    /// @notice Attacker info: suitable both for hero and monsters
    struct AttackInfo {
    /// @notice Type of the attack
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 8 of 17 : IGameToken.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "./IERC20.sol";
    interface IGameToken is IERC20 {
    function minter() external view returns (address);
    function mint(address account, uint amount) external returns (bool);
    function burn(uint amount) external returns (bool);
    function setMinter(address minter_) external;
    function pause(bool value) external;
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 9 of 17 : IGOC.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "../openzeppelin/EnumerableSet.sol";
    import "./IController.sol";
    interface IGOC {
    enum ObjectType {
    UNKNOWN, // 0
    EVENT, // 1
    MONSTER, // 2
    STORY, // 3
    END_SLOT
    }
    enum ObjectSubType {
    UNKNOWN_0, // 0
    ENEMY_NPC_1, // 1
    ENEMY_NPC_SUPER_RARE_2, // 2
    BOSS_3, // 3
    SHRINE_4, // 4
    CHEST_5, // 5
    STORY_6, // 6
    STORY_UNIQUE_7, // 7
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 10 of 17 : IHeroController.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "../openzeppelin/EnumerableSet.sol";
    import "../openzeppelin/EnumerableMap.sol";
    interface IHeroController {
    /// @custom:storage-location erc7201:hero.controller.main
    struct MainState {
    /// @dev A central place for all hero tokens
    /// @dev Deprecated. Controller is used instead.
    address heroTokensVault;
    /// @dev heroAdr => packed tokenAdr160+ amount96
    mapping(address => bytes32) payToken;
    /// @dev heroAdr => heroCls8
    mapping(address => uint8) heroClass;
    // ---
    /// @dev hero+id => individual hero name
    mapping(bytes32 => string) heroName;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 11 of 17 : IItemController.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "./IStatController.sol";
    import "./IGOC.sol";
    import "../openzeppelin/EnumerableSet.sol";
    interface IItemController {
    enum GlobalParam {
    UNKNOWN_0,
    /// @notice Address of ItemControllerHelper
    ITEM_CONTROLLER_HELPER_ADDRESS_1
    }
    /// @custom:storage-location erc7201:item.controller.main
    struct MainState {
    ////////////////// GENERATE //////////////////
    EnumerableSet.AddressSet items;
    /// @dev itemAdr => itemMetaType8 + itemLvl8 + itemType8 + baseDurability16 + defaultRarity8 + minAttr8 + maxAttr8 + manaCost32 + req(packed core
            128)
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 12 of 17 : IOracle.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    interface IOracle {
    function getRandomNumber(uint max, uint seed) external returns (uint);
    function getRandomNumberInRange(uint min, uint max, uint seed) external returns (uint);
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 13 of 17 : IStatController.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "../openzeppelin/EnumerableSet.sol";
    import "../openzeppelin/EnumerableMap.sol";
    interface IStatController {
    /// @custom:storage-location erc7201:stat.controller.main
    struct MainState {
    mapping(bytes32 => bytes32[]) heroTotalAttributes;
    /// @dev heroAdr+heroId => int32 packed strength, dexterity, vitality, energy
    mapping(bytes32 => bytes32) _heroCore;
    mapping(bytes32 => bytes32[]) heroBonusAttributes;
    mapping(bytes32 => bytes32[]) heroTemporallyAttributes;
    /// @dev heroAdr+heroId => uint32 packed level, experience, life, mana, lifeChances
    mapping(bytes32 => bytes32) heroStats;
    /// @dev heroAdr+heroId+itemSlot => itemAdr + itemId
    mapping(bytes32 => bytes32) heroSlots;
    /// @dev heroAdr+heroId => busy slots uint8[] packed
    mapping(bytes32 => bytes32) heroBusySlots;
    mapping(bytes32 => EnumerableSet.AddressSet) usedConsumables;
    /// @dev heroCustomDataV2 is used instead
    mapping(bytes32 => mapping(bytes32 => uint)) _deprecated_heroCustomData;
    mapping(bytes32 => uint) globalCustomData;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 14 of 17 : IStoryController.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: BUSL-1.1
    pragma solidity 0.8.23;
    import "../interfaces/IGOC.sol";
    import "../interfaces/IStatController.sol";
    import "../interfaces/IItemController.sol";
    import "./IController.sol";
    import "./IOracle.sol";
    import "./IHeroController.sol";
    import "../openzeppelin/EnumerableSet.sol";
    interface IStoryController {
    enum AnswerResultId {
    UNKNOWN, // 0
    SUCCESS, // 1
    ATTRIBUTE_FAIL, // 2
    RANDOM_FAIL, // 3
    DELAY_FAIL, // 4
    HERO_CUSTOM_DATA_FAIL, // 5
    GLOBAL_CUSTOM_DATA_FAIL, // 6
    END_SLOT
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 15 of 17 : EnumerableMap.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.0.0) (utils/structs/EnumerableMap.sol)
    // This file was procedurally generated from scripts/generate/templates/EnumerableMap.js.
    pragma solidity ^0.8.20;
    import {EnumerableSet} from "./EnumerableSet.sol";
    /**
    * @dev Library for managing an enumerable variant of Solidity's
    * https://solidity.readthedocs.io/en/latest/types.html#mapping-types[`mapping`]
    * type.
    *
    * Maps have the following properties:
    *
    * - Entries are added, removed, and checked for existence in constant time
    * (O(1)).
    * - Entries are enumerated in O(n). No guarantees are made on the ordering.
    *
    * ```solidity
    * contract Example {
    * // Add the library methods
    * using EnumerableMap for EnumerableMap.UintToAddressMap;
    *
    * // Declare a set state variable
    * EnumerableMap.UintToAddressMap private myMap;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 16 of 17 : EnumerableSet.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v5.0.0) (utils/structs/EnumerableSet.sol)
    // This file was procedurally generated from scripts/generate/templates/EnumerableSet.js.
    pragma solidity ^0.8.20;
    /**
    * @dev Library for managing
    * https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive
    * types.
    *
    * Sets have the following properties:
    *
    * - Elements are added, removed, and checked for existence in constant time
    * (O(1)).
    * - Elements are enumerated in O(n). No guarantees are made on the ordering.
    *
    * ```solidity
    * contract Example {
    * // Add the library methods
    * using EnumerableSet for EnumerableSet.AddressSet;
    *
    * // Declare a set state variable
    * EnumerableSet.AddressSet private mySet;
    * }
    * ```
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    File 17 of 17 : ERC2771Context.sol
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    // SPDX-License-Identifier: MIT
    // OpenZeppelin Contracts (last updated v4.7.0) (metatx/ERC2771Context.sol)
    pragma solidity ^0.8.1;
    import "../interfaces/IAppErrors.sol";
    /**
    * @dev Context variant with ERC2771 support.
    */
    // based on https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/metatx/ERC2771Context.sol
    abstract contract ERC2771Context {
    // for whitelist new relayers need to add new constants and update proxies
    address private constant GELATO_RELAY_1_BALANCE_ERC_2771 = 0xd8253782c45a12053594b9deB72d8e8aB2Fca54c;
    address private constant SACRA_RELAY = 0x52CEba41Da235Af367bFC0b0cCd3314cb901bB5F;
    address private constant SACRA_RELAY_2 = 0x102f1f556cD9C3D5f820E6920A8931657c5Da21B;
    function isTrustedForwarder(address forwarder) public view virtual returns (bool){
    return forwarder == GELATO_RELAY_1_BALANCE_ERC_2771 || forwarder == SACRA_RELAY || forwarder == SACRA_RELAY_2;
    }
    function _msgSender() internal view virtual returns (address sender) {
    if (isTrustedForwarder(msg.sender)) {
    // The assembly code is more direct than the Solidity version using `abi.decode`.
    /// @solidity memory-safe-assembly
    assembly {
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Settings
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    {
    "evmVersion": "istanbul",
    "optimizer": {
    "enabled": true,
    "runs": 50
    },
    "outputSelection": {
    "*": {
    "*": [
    "evm.bytecode",
    "evm.deployedBytecode",
    "devdoc",
    "userdoc",
    "metadata",
    "abi"
    ]
    }
    },
    "metadata": {
    "useLiteralContent": true
    },
    "libraries": {}
    }
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Contract Security Audit

    Contract ABI

    [{"inputs":[{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"_minter","type":"address"},{"internalType":"address","name":"mintTo","type":"address"},{"internalType":"uint256","name":"mintAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ApproveToZeroAddress","type":"error"},{"inputs":[],"name":"BurnAmountExceedsBalance","type":"error"},{"inputs":[],"name":"ErrorPaused","type":"error"},{"inputs":[],"name":"InsufficientAllowance","type":"error"},{"inputs":[],"name":"MintToZeroAddress","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"NotMinter","type":"error"},{"inputs":[{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"TransferAmountExceedsBalance","type":"error"},{"inputs":[],"name":"TransferToZeroAddress","type":"error"},{"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":false,"internalType":"bool","name":"value","type":"bool"}],"name":"ChangePauseStatus","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"value","type":"address"}],"name":"MinterChanged","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":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender_","type":"address"},{"internalType":"uint256","name":"value_","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"forwarder","type":"address"}],"name":"isTrustedForwarder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"minter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"minter_","type":"address"}],"name":"setMinter","outputs":[],"stateMutability":"nonpayable","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":"value_","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":"value_","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

    60806040523480156200001157600080fd5b5060405162000fae38038062000fae833981016040819052620000349162000269565b600062000042868262000393565b50600162000051858262000393565b50600680546001600160a01b0319166001600160a01b03851617905562000079828262000085565b50505050505062000481565b60006001600160a01b038316620000ae57604051622e076360e81b815260040160405180910390fd5b60035460ff1615620000ef5760405162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015260640160405180910390fd5b6001600160a01b03831660009081526004602052604081208054849290620001199084906200045f565b9250508190555081600260008282546200013491906200045f565b90915550506040518281526001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35060015b92915050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620001ac57600080fd5b81516001600160401b0380821115620001c957620001c962000184565b604051601f8301601f19908116603f01168101908282118183101715620001f457620001f462000184565b81604052838152602092508660208588010111156200021257600080fd5b600091505b8382101562000236578582018301518183018401529082019062000217565b6000602085830101528094505050505092915050565b80516001600160a01b03811681146200026457600080fd5b919050565b600080600080600060a086880312156200028257600080fd5b85516001600160401b03808211156200029a57600080fd5b620002a889838a016200019a565b96506020880151915080821115620002bf57600080fd5b50620002ce888289016200019a565b945050620002df604087016200024c565b9250620002ef606087016200024c565b9150608086015190509295509295909350565b600181811c908216806200031757607f821691505b6020821081036200033857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200038e576000816000526020600020601f850160051c81016020861015620003695750805b601f850160051c820191505b818110156200038a5782815560010162000375565b5050505b505050565b81516001600160401b03811115620003af57620003af62000184565b620003c781620003c0845462000302565b846200033e565b602080601f831160018114620003ff5760008415620003e65750858301515b600019600386901b1c1916600185901b1785556200038a565b600085815260208120601f198616915b8281101562000430578886015182559484019460019091019084016200040f565b50858210156200044f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b808201808211156200017e57634e487b7160e01b600052601160045260246000fd5b610b1d80620004916000396000f3fe608060405234801561001057600080fd5b50600436106100e05760003560e01c806342966c681161008757806342966c68146101b2578063572b6c05146101c55780635c975abb146101d857806370a08231146101e557806395d89b4114610205578063a9059cbb1461020d578063dd62ed3e14610220578063fca3b5aa1461024b57600080fd5b806302329a29146100e557806306fdde03146100fa5780630754617214610118578063095ea7b31461013857806318160ddd1461015b57806323b872dd14610172578063313ce5671461018557806340c10f191461019f575b600080fd5b6100f86100f33660046108fe565b61025e565b005b6101026102dc565b60405161010f9190610920565b60405180910390f35b60065461012b906001600160a01b031681565b60405161010f919061096f565b61014b61014636600461099f565b61036a565b604051901515815260200161010f565b61016460025481565b60405190815260200161010f565b61014b6101803660046109c9565b610424565b61018d601281565b60405160ff909116815260200161010f565b61014b6101ad36600461099f565b6104fd565b61014b6101c0366004610a05565b610541565b61014b6101d3366004610a1e565b6105dc565b60035461014b9060ff1681565b6101646101f3366004610a1e565b60046020526000908152604090205481565b610102610651565b61014b61021b36600461099f565b61065e565b61016461022e366004610a39565b600560209081526000928352604080842090915290825290205481565b6100f8610259366004610a1e565b610679565b6006546001600160a01b031633146102945733604051631b0e18f960e11b815260040161028b919061096f565b60405180910390fd5b6003805460ff19168215159081179091556040519081527f58bacb7f0dd4d609de27cc5c3f458b9a9bdcf5d148bca9f186b33ad75d2c23b4906020015b60405180910390a150565b600180546102e990610a6c565b80601f016020809104026020016040519081016040528092919081815260200182805461031590610a6c565b80156103625780601f1061033757610100808354040283529160200191610362565b820191906000526020600020905b81548152906001019060200180831161034557829003601f168201915b505050505081565b60006001600160a01b0383166103935760405163076e33c360e31b815260040160405180910390fd5b81600560006103a06106f1565b6001600160a01b03908116825260208083019390935260409182016000908120918816808252919093529120919091556103d86106f1565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161041291815260200190565b60405180910390a35060015b92915050565b60008061042f6106f1565b6001600160a01b0380871660009081526005602090815260408083209385168352929052205490915060001981146104e85783811015610482576040516313be252b60e01b815260040160405180910390fd5b6001600160a01b03868116600081815260056020908152604080832094871680845294825291829020888603908190559151828152919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505b6104f3868686610713565b9695505050505050565b6006546000906001600160a01b0316331461052d5733604051631b0e18f960e11b815260040161028b919061096f565b6105378383610828565b5060019392505050565b60008061054c6106f1565b6001600160a01b0381166000908152600460205260409020549091508381101561058957604051630bba337f60e11b815260040160405180910390fd5b6001600160a01b0382166000818152600460209081526040808320888603905560028054899003905551878152919291600080516020610ac8833981519152910160405180910390a35060019392505050565b60006001600160a01b03821673d8253782c45a12053594b9deb72d8e8ab2fca54c148061062557506001600160a01b0382167352ceba41da235af367bfc0b0ccd3314cb901bb5f145b8061041e57506001600160a01b03821673102f1f556cd9c3d5f820e6920a8931657c5da21b1492915050565b600080546102e990610a6c565b600061067261066b6106f1565b8484610713565b9392505050565b6006546001600160a01b031633146106a65733604051631b0e18f960e11b815260040161028b919061096f565b600680546001600160a01b0319166001600160a01b0383161790556040517fb6b8f1859c5c352e5ffad07d0f77e384ac725512c015bd3a3ffc885831c8a425906102d190839061096f565b60006106fc336105dc565b1561070e575060131936013560601c90565b503390565b60006001600160a01b03831661073c57604051633a954ecd60e21b815260040160405180910390fd5b60035460ff161561076057604051635e1633d360e11b815260040160405180910390fd5b6001600160a01b038416600090815260046020526040902054828110156107a4576040516350d2479d60e11b8152600481018290526024810184905260440161028b565b6001600160a01b038086166000908152600460205260408082208685039055918616815290812080548592906107db908490610aa6565b92505081905550836001600160a01b0316856001600160a01b0316600080516020610ac88339815191528560405161081591815260200190565b60405180910390a3506001949350505050565b60006001600160a01b03831661085057604051622e076360e81b815260040160405180910390fd5b60035460ff161561088c5760405162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015260640161028b565b6001600160a01b038316600090815260046020526040812080548492906108b4908490610aa6565b9250508190555081600260008282546108cd9190610aa6565b90915550506040518281526001600160a01b03841690600090600080516020610ac883398151915290602001610412565b60006020828403121561091057600080fd5b8135801515811461067257600080fd5b60006020808352835180602085015260005b8181101561094e57858101830151858201604001528201610932565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0391909116815260200190565b80356001600160a01b038116811461099a57600080fd5b919050565b600080604083850312156109b257600080fd5b6109bb83610983565b946020939093013593505050565b6000806000606084860312156109de57600080fd5b6109e784610983565b92506109f560208501610983565b9150604084013590509250925092565b600060208284031215610a1757600080fd5b5035919050565b600060208284031215610a3057600080fd5b61067282610983565b60008060408385031215610a4c57600080fd5b610a5583610983565b9150610a6360208401610983565b90509250929050565b600181811c90821680610a8057607f821691505b602082108103610aa057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561041e57634e487b7160e01b600052601160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122080bf81ce219e011ab91f2ee3d74b46041a8a2457df652db39c10a92eadb5122d64736f6c6343000817003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf70000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf7000000000000000000000000000000000000000000007f0e10af47c1c7000000000000000000000000000000000000000000000000000000000000000000000b53414352415f47454d5f31000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b53616372612047656d2031000000000000000000000000000000000000000000

    Deployed Bytecode

    0x608060405234801561001057600080fd5b50600436106100e05760003560e01c806342966c681161008757806342966c68146101b2578063572b6c05146101c55780635c975abb146101d857806370a08231146101e557806395d89b4114610205578063a9059cbb1461020d578063dd62ed3e14610220578063fca3b5aa1461024b57600080fd5b806302329a29146100e557806306fdde03146100fa5780630754617214610118578063095ea7b31461013857806318160ddd1461015b57806323b872dd14610172578063313ce5671461018557806340c10f191461019f575b600080fd5b6100f86100f33660046108fe565b61025e565b005b6101026102dc565b60405161010f9190610920565b60405180910390f35b60065461012b906001600160a01b031681565b60405161010f919061096f565b61014b61014636600461099f565b61036a565b604051901515815260200161010f565b61016460025481565b60405190815260200161010f565b61014b6101803660046109c9565b610424565b61018d601281565b60405160ff909116815260200161010f565b61014b6101ad36600461099f565b6104fd565b61014b6101c0366004610a05565b610541565b61014b6101d3366004610a1e565b6105dc565b60035461014b9060ff1681565b6101646101f3366004610a1e565b60046020526000908152604090205481565b610102610651565b61014b61021b36600461099f565b61065e565b61016461022e366004610a39565b600560209081526000928352604080842090915290825290205481565b6100f8610259366004610a1e565b610679565b6006546001600160a01b031633146102945733604051631b0e18f960e11b815260040161028b919061096f565b60405180910390fd5b6003805460ff19168215159081179091556040519081527f58bacb7f0dd4d609de27cc5c3f458b9a9bdcf5d148bca9f186b33ad75d2c23b4906020015b60405180910390a150565b600180546102e990610a6c565b80601f016020809104026020016040519081016040528092919081815260200182805461031590610a6c565b80156103625780601f1061033757610100808354040283529160200191610362565b820191906000526020600020905b81548152906001019060200180831161034557829003601f168201915b505050505081565b60006001600160a01b0383166103935760405163076e33c360e31b815260040160405180910390fd5b81600560006103a06106f1565b6001600160a01b03908116825260208083019390935260409182016000908120918816808252919093529120919091556103d86106f1565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161041291815260200190565b60405180910390a35060015b92915050565b60008061042f6106f1565b6001600160a01b0380871660009081526005602090815260408083209385168352929052205490915060001981146104e85783811015610482576040516313be252b60e01b815260040160405180910390fd5b6001600160a01b03868116600081815260056020908152604080832094871680845294825291829020888603908190559151828152919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505b6104f3868686610713565b9695505050505050565b6006546000906001600160a01b0316331461052d5733604051631b0e18f960e11b815260040161028b919061096f565b6105378383610828565b5060019392505050565b60008061054c6106f1565b6001600160a01b0381166000908152600460205260409020549091508381101561058957604051630bba337f60e11b815260040160405180910390fd5b6001600160a01b0382166000818152600460209081526040808320888603905560028054899003905551878152919291600080516020610ac8833981519152910160405180910390a35060019392505050565b60006001600160a01b03821673d8253782c45a12053594b9deb72d8e8ab2fca54c148061062557506001600160a01b0382167352ceba41da235af367bfc0b0ccd3314cb901bb5f145b8061041e57506001600160a01b03821673102f1f556cd9c3d5f820e6920a8931657c5da21b1492915050565b600080546102e990610a6c565b600061067261066b6106f1565b8484610713565b9392505050565b6006546001600160a01b031633146106a65733604051631b0e18f960e11b815260040161028b919061096f565b600680546001600160a01b0319166001600160a01b0383161790556040517fb6b8f1859c5c352e5ffad07d0f77e384ac725512c015bd3a3ffc885831c8a425906102d190839061096f565b60006106fc336105dc565b1561070e575060131936013560601c90565b503390565b60006001600160a01b03831661073c57604051633a954ecd60e21b815260040160405180910390fd5b60035460ff161561076057604051635e1633d360e11b815260040160405180910390fd5b6001600160a01b038416600090815260046020526040902054828110156107a4576040516350d2479d60e11b8152600481018290526024810184905260440161028b565b6001600160a01b038086166000908152600460205260408082208685039055918616815290812080548592906107db908490610aa6565b92505081905550836001600160a01b0316856001600160a01b0316600080516020610ac88339815191528560405161081591815260200190565b60405180910390a3506001949350505050565b60006001600160a01b03831661085057604051622e076360e81b815260040160405180910390fd5b60035460ff161561088c5760405162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015260640161028b565b6001600160a01b038316600090815260046020526040812080548492906108b4908490610aa6565b9250508190555081600260008282546108cd9190610aa6565b90915550506040518281526001600160a01b03841690600090600080516020610ac883398151915290602001610412565b60006020828403121561091057600080fd5b8135801515811461067257600080fd5b60006020808352835180602085015260005b8181101561094e57858101830151858201604001528201610932565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0391909116815260200190565b80356001600160a01b038116811461099a57600080fd5b919050565b600080604083850312156109b257600080fd5b6109bb83610983565b946020939093013593505050565b6000806000606084860312156109de57600080fd5b6109e784610983565b92506109f560208501610983565b9150604084013590509250925092565b600060208284031215610a1757600080fd5b5035919050565b600060208284031215610a3057600080fd5b61067282610983565b60008060408385031215610a4c57600080fd5b610a5583610983565b9150610a6360208401610983565b90509250929050565b600181811c90821680610a8057607f821691505b602082108103610aa057634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561041e57634e487b7160e01b600052601160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122080bf81ce219e011ab91f2ee3d74b46041a8a2457df652db39c10a92eadb5122d64736f6c63430008170033

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

    00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf70000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf7000000000000000000000000000000000000000000007f0e10af47c1c7000000000000000000000000000000000000000000000000000000000000000000000b53414352415f47454d5f31000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b53616372612047656d2031000000000000000000000000000000000000000000

    -----Decoded View---------------
    Arg [0] : _symbol (string): SACRA_GEM_1
    Arg [1] : _name (string): Sacra Gem 1
    Arg [2] : _minter (address): 0x0644141DD9C2c34802d28D334217bD2034206Bf7
    Arg [3] : mintTo (address): 0x0644141DD9C2c34802d28D334217bD2034206Bf7
    Arg [4] : mintAmount (uint256): 600000000000000000000000

    -----Encoded View---------------
    9 Constructor Arguments found :
    Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
    Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
    Arg [2] : 0000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf7
    Arg [3] : 0000000000000000000000000644141dd9c2c34802d28d334217bd2034206bf7
    Arg [4] : 000000000000000000000000000000000000000000007f0e10af47c1c7000000
    Arg [5] : 000000000000000000000000000000000000000000000000000000000000000b
    Arg [6] : 53414352415f47454d5f31000000000000000000000000000000000000000000
    Arg [7] : 000000000000000000000000000000000000000000000000000000000000000b
    Arg [8] : 53616372612047656d2031000000000000000000000000000000000000000000


    [ 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.