Contract 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 1

 

Contract Overview

Balance:
0 ETH

ETH Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xeda4fd894b087a79a3e372d8b1d926b545f13b1ca398b03fd64e44f6085a9710Stake264302512022-09-24 17:04:578 days 11 hrs ago0xb284bbf1864cbcfb2dff29671ff0487cd4873c87 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00091286
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13Stake230510302022-09-06 0:37:5927 days 3 hrs ago0x04e34e0c1009b6d1dc2e3f4b5ff63020bdb07316 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00127969
0x110166dd3f4647657b0d4ecc329652d4243ae181ee9ce973cc14b68b29d8db5cClaim228871352022-09-05 2:33:5028 days 2 hrs ago0xcf3b8981abaa56a8e41117b0c721c05f608400a7 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00034568
0x8d1b3afebc68ba464daa97d4acf9834a379ea219f071a1e155dffbd569e6a3c7Stake227222332022-09-04 2:05:0029 days 2 hrs ago0x1c691afa0c3c76ee55725c409d306079ac627918 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00047379
0x8b42d9f8d3cd56b35976ca501adb604badaaf3bdccfeaec8078c787672f01565Stake227079212022-09-03 22:14:3429 days 6 hrs ago0x4167486bed0a059090a56744eb5e892f8b75f2e4 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00055063
0xd88c997b7aeb1499f194a7d63a678e1a99d8c7f41bbea4f5b2e77d333b1313f8Stake216337002022-08-28 5:15:3835 days 23 hrs ago0x60bf3e3763e199519a702c5cc61d9867f024df95 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000056158814 ETH
0xd8a1ad7e28783363cc610c8f9717951cedb1c8953ba3ccee53a3764e69b6842eStake216238942022-08-28 3:31:3636 days 1 hr ago0x5810f362f1cf7f1a6658dd0151ad465a54ca4230 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000056164988 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4Stake214484742022-08-26 19:23:1937 days 9 hrs ago0x4f17562c9a6ccfe47c3ef4245eb53c047cb2ff1d IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000414796372 ETH
0x96d09ade972a7f2cb55ad3a0825f7e3491a64902821c30f8e6f58bd6bb2e36deStake210155142022-08-23 3:18:0941 days 1 hr ago0xe498d7f4015297cae4ffec93f1f34996fc82e3ed IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000093899278 ETH
0x00549f7e23c7432c502ed1b9bacc5ae80321ffe47ccc10ac03140402f459a554Stake210151962022-08-23 3:13:3241 days 1 hr ago0x7137348dd65f9d5dab65f253e120c5a0227752eb IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.00010434095 ETH
0xca49d0709641b80093959e0c864544373e939f6327ee483c0435ef4947e82f3eStake208141342022-08-20 21:11:5543 days 7 hrs ago0xcf3b8981abaa56a8e41117b0c721c05f608400a7 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000101379252 ETH
0x9a3777e7175a0b4ee7ee7f1dc82319574a0e67a733fa342ef39568ee95c73744Stake207478562022-08-20 4:01:5144 days 33 mins ago0x4c775fcde221a18c82499ca73058e3055373ffb6 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000092920981 ETH
0xef8ac7855bdab37c4ee5a1c07f3c7da28f014ea57dd9c333c6a9f4926f6bd3d2Stake206779332022-08-19 11:03:0544 days 17 hrs ago0x988ce94b9271ed4b323b745c1f63bc4a8ee00e4d IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000089537643 ETH
0x62485f593d5505bacfc7c5e54481bae45206f611ba9aedf8a73b7508dce08d60Stake206519972022-08-19 4:50:4444 days 23 hrs ago0x055062dfca63c09b8dcbe019abe3c028811c1ed4 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000087202853 ETH
0x2b9f094735a36491cc5f2970e9ead3e750335411840d9a985b75e0fef0e7ffc9Stake206222692022-08-18 19:50:5445 days 8 hrs ago0x422a002105e8a5925fc1e93d2281a7ae989f7265 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000116174287 ETH
0x07eed3912f534ae97d4d15876858c1450fe98c8f23291a6fa797621d65ee43fbStake206188142022-08-18 18:39:3045 days 9 hrs ago0x0aa0c3ac0151c42537fdb3cb6a2f37b9251a6c6c IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000116425401 ETH
0xb7bcd5a31e68f357dd2ebbf4b3711e3dad4d9003b7b9966c316a4d5718d13993Stake204732752022-08-17 6:10:5246 days 22 hrs ago0xee87f4a569df482d884863d49a33f59f1fd49983 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000105154436 ETH
0x60548358ce9c98e4de5c9444c303204fd9e694b3b00ada81106b4f75f96055c8Stake204631962022-08-17 3:16:0247 days 1 hr ago0xd433f8145ed3d46225e234cf057be03275026862 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000100343524 ETH
0x66d2d96dc071b106008cbf62aa84fb87e6399cf0d47d117429d1077d6a08f827Stake204213572022-08-16 16:08:5647 days 12 hrs ago0xd99208a6b2c353b88db78f04642b47f9fa993337 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000117567377 ETH
0x286e17322dcb704c66bdf25fa36cfca4f9adeeb2415429af4e03fcc1f5dcc2d3Stake202576502022-08-14 19:43:5349 days 8 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000112141068 ETH
0xca324b86212a4f8d8b25810d38c11f0cdf823659728449e2885f350a6053f814Claim202576222022-08-14 19:43:0049 days 8 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000058271054 ETH
0x3b66ebedfe61492d5091f03b2f6e8c7276c20ee65d0a0d9c3426e52379f336a8Unstake202575932022-08-14 19:42:2949 days 8 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000071857776 ETH
0xd4d70034e75e20de45a94bbd717106eece7ca741d3a0f048300515803f6e6366Claim201852142022-08-13 22:05:3250 days 6 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000067181032 ETH
0x0f52fee8e19195aee15d7093edff8922c8acda11a5ab628f09073c96e5b19deaStake201851152022-08-13 22:04:5050 days 6 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  0xdb4736ee9cf22d79501e4c079ac8ca090694274b0 ETH0.000093351061 ETH
0xb82da7fd1bcfc084eacd74dab124423b556f4f56e893121eccbb173e1e031e140x60806040201778752022-08-13 19:23:4050 days 9 hrs ago0xa1aed6f3b7c8f871b4ac27144ade9fda6fbcd639 IN  Create: AxolittlesStaking0 ETH0.002592309426 ETH
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xeda4fd894b087a79a3e372d8b1d926b545f13b1ca398b03fd64e44f6085a9710264302512022-09-24 17:04:578 days 11 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xeda4fd894b087a79a3e372d8b1d926b545f13b1ca398b03fd64e44f6085a9710264302512022-09-24 17:04:578 days 11 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xeda4fd894b087a79a3e372d8b1d926b545f13b1ca398b03fd64e44f6085a9710264302512022-09-24 17:04:578 days 11 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xeda4fd894b087a79a3e372d8b1d926b545f13b1ca398b03fd64e44f6085a9710264302512022-09-24 17:04:578 days 11 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13230510302022-09-06 0:37:5927 days 3 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13230510302022-09-06 0:37:5927 days 3 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13230510302022-09-06 0:37:5927 days 3 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13230510302022-09-06 0:37:5927 days 3 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xb1d4ef63c3d12cc6249b5562d61b6ff0930d19785705a840ca08418b84206c13230510302022-09-06 0:37:5927 days 3 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x110166dd3f4647657b0d4ecc329652d4243ae181ee9ce973cc14b68b29d8db5c228871352022-09-05 2:33:5028 days 2 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xbb113ad1b7c4615ccf59a5d8a4062335038d6ee50 ETH
0x8d1b3afebc68ba464daa97d4acf9834a379ea219f071a1e155dffbd569e6a3c7227222332022-09-04 2:05:0029 days 2 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x8b42d9f8d3cd56b35976ca501adb604badaaf3bdccfeaec8078c787672f01565227079212022-09-03 22:14:3429 days 6 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xd88c997b7aeb1499f194a7d63a678e1a99d8c7f41bbea4f5b2e77d333b1313f8216337002022-08-28 5:15:3835 days 23 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xd88c997b7aeb1499f194a7d63a678e1a99d8c7f41bbea4f5b2e77d333b1313f8216337002022-08-28 5:15:3835 days 23 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xd8a1ad7e28783363cc610c8f9717951cedb1c8953ba3ccee53a3764e69b6842e216238942022-08-28 3:31:3636 days 1 hr ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0xd8a1ad7e28783363cc610c8f9717951cedb1c8953ba3ccee53a3764e69b6842e216238942022-08-28 3:31:3636 days 1 hr ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
0x4c5f38d754654045289eb2374218f978625b114810ad0a2ca2885746b16f40d4214484742022-08-26 19:23:1937 days 9 hrs ago 0xdb4736ee9cf22d79501e4c079ac8ca090694274b 0xcc737e05a6b5d94cafa523e55c5689631c8e97a40 ETH
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AxolittlesStaking

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Arbiscan on 2022-08-13
*/

// 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);
}


// File @openzeppelin/contracts/token/ERC721/[email protected]


// OpenZeppelin Contracts (last updated v4.7.0) (token/ERC721/IERC721.sol)

pragma solidity ^0.8.0;

/**
 * @dev Required interface of an ERC721 compliant contract.
 */
interface IERC721 is IERC165 {
    /**
     * @dev Emitted when `tokenId` token is transferred from `from` to `to`.
     */
    event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.
     */
    event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);

    /**
     * @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.
     */
    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);

    /**
     * @dev Returns the number of tokens in ``owner``'s account.
     */
    function balanceOf(address owner) external view returns (uint256 balance);

    /**
     * @dev Returns the owner of the `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function ownerOf(uint256 tokenId) external view returns (address owner);

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId,
        bytes calldata data
    ) external;

    /**
     * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients
     * are aware of the ERC721 protocol to prevent tokens from being forever locked.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must exist and be owned by `from`.
     * - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}.
     * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer.
     *
     * Emits a {Transfer} event.
     */
    function safeTransferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Transfers `tokenId` token from `from` to `to`.
     *
     * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `tokenId` token must be owned by `from`.
     * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 tokenId
    ) external;

    /**
     * @dev Gives permission to `to` to transfer `tokenId` token to another account.
     * The approval is cleared when the token is transferred.
     *
     * Only a single account can be approved at a time, so approving the zero address clears previous approvals.
     *
     * Requirements:
     *
     * - The caller must own the token or be an approved operator.
     * - `tokenId` must exist.
     *
     * Emits an {Approval} event.
     */
    function approve(address to, uint256 tokenId) external;

    /**
     * @dev Approve or remove `operator` as an operator for the caller.
     * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller.
     *
     * Requirements:
     *
     * - The `operator` cannot be the caller.
     *
     * Emits an {ApprovalForAll} event.
     */
    function setApprovalForAll(address operator, bool _approved) external;

    /**
     * @dev Returns the account approved for `tokenId` token.
     *
     * Requirements:
     *
     * - `tokenId` must exist.
     */
    function getApproved(uint256 tokenId) external view returns (address operator);

    /**
     * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`.
     *
     * See {setApprovalForAll}
     */
    function isApprovedForAll(address owner, address operator) external view returns (bool);
}


// File @openzeppelin/contracts/utils/[email protected]


// 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;
    }
}


// File @openzeppelin/contracts/access/[email protected]


// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)

pragma solidity ^0.8.0;

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}


// File contracts/AxolittlesStakingGeneric.sol



pragma solidity ^0.8.10;
/// @title Interface to interact with Bubbles contract.
interface IBubbles {
    function mint(address recipient, uint256 amount) external;
}

/// @author The Axolittles Team
/// @title Contract for staking axos to receive $BUBBLE
contract AxolittlesStaking is Ownable {
    address public AXOLITTLES;
    address public TOKEN;
    bool public stakingPaused;
    bool public isVariableReward;
    uint256 public stakeTarget = 6000;
    // Amount of $BUBBLE generated each block, contains 18 decimals.
    uint256 public emissionPerBlock = 15000000000000000;
    uint256 internal totalStaked;

    /// @notice struct per owner address to store:
    /// a. previously calced rewards, b. number staked, and block since last reward calculation.
    struct staker {
        // number of axolittles currently staked
        uint256 numStaked;
        // block since calcedReward was last updated
        uint256 blockSinceLastCalc;
        // previously calculated rewards
        uint256 calcedReward;
    }

    mapping(address => staker) public stakers;
    mapping(uint256 => address) public stakedAxos;

    constructor(address _axolittles, address _token) {
        AXOLITTLES = _axolittles;
        TOKEN = _token;
    }

    event Stake(address indexed owner, uint256[] tokenIds);
    event Unstake(address indexed owner, uint256[] tokenIds);
    event Claim(address indexed owner, uint256 totalReward);
    event SetStakingPaused(bool _stakingPaused);
    event SetVariableReward(bool _isVariableReward);
    event SetStakeTarget(uint256 stakeTarget);
    event AdminTransfer(uint256[] tokenIds);

    /// @notice Function to stake axos. Transfers axos from sender to this contract.
    function stake(uint256[] memory tokenIds) external {
        require(!stakingPaused, "Staking is paused");
        require(tokenIds.length > 0, "Nothing to stake");
        stakers[msg.sender].calcedReward = _checkRewardInternal(msg.sender);
        stakers[msg.sender].numStaked += tokenIds.length;
        stakers[msg.sender].blockSinceLastCalc = block.number;
        totalStaked += tokenIds.length;
        for (uint256 i = 0; i < tokenIds.length; i++) {
            IERC721(AXOLITTLES).transferFrom(
                msg.sender,
                address(this),
                tokenIds[i]
            );
            stakedAxos[tokenIds[i]] = msg.sender;
        }
        emit Stake(msg.sender, tokenIds);
    }

    /// @notice Function to unstake axos. Transfers axos from this contract back to sender address.
    function unstake(uint256[] memory tokenIds) external {
        require(tokenIds.length > 0, "Nothing to unstake");
        require(
            tokenIds.length <= stakers[msg.sender].numStaked,
            "Not your axo!"
        );
        stakers[msg.sender].calcedReward = _checkRewardInternal(msg.sender);
        stakers[msg.sender].numStaked -= tokenIds.length;
        stakers[msg.sender].blockSinceLastCalc = block.number;
        totalStaked -= tokenIds.length;
        for (uint256 i = 0; i < tokenIds.length; i++) {
            require(msg.sender == stakedAxos[tokenIds[i]], "Not your axo!");
            delete stakedAxos[tokenIds[i]];
            IERC721(AXOLITTLES).transferFrom(
                address(this),
                msg.sender,
                tokenIds[i]
            );
        }
        emit Unstake(msg.sender, tokenIds);
    }

    /// @notice Function to claim $BUBBLE.
    function claim() external {
        //todo: ownership and other checks here
        uint256 totalReward = _checkRewardInternal(msg.sender);
        require(totalReward > 0, "Nothing to claim");
        stakers[msg.sender].blockSinceLastCalc = block.number;
        stakers[msg.sender].calcedReward = 0;
        IBubbles(TOKEN).mint(msg.sender, totalReward);
        emit Claim(msg.sender, totalReward);
    }

    /// @notice Function to check rewards per staker address
    function checkReward(address _staker_address)
        external
        view
        returns (uint256)
    {
        return _checkRewardInternal(_staker_address);
    }

    /// @notice Internal function to check rewards per staker address
    function _checkRewardInternal(address _staker_address)
        internal
        view
        returns (uint256)
    {
        uint256 newReward = stakers[_staker_address].numStaked *
            emissionPerBlock *
            (block.number - stakers[_staker_address].blockSinceLastCalc);

        if (isVariableReward) {
            if (totalStaked >= stakeTarget) {
                newReward *= 2;
            } else {
                newReward += (newReward * totalStaked) / stakeTarget;
            }
        }
        return stakers[_staker_address].calcedReward + newReward;
    }

    //ADMIN FUNCTIONS
    /// @notice Function to change address of NFT
    function setAxolittlesAddress(address _axolittlesAddress)
        external
        onlyOwner
    {
        AXOLITTLES = _axolittlesAddress;
    }

    /// @notice Function to change address of reward token
    function setTokenAddress(address _tokenAddress) external onlyOwner {
        TOKEN = _tokenAddress;
    }

    /// @notice Function to change amount of $BUBBLE generated each block per axo
    function setEmissionPerBlock(uint256 _emissionPerBlock) external onlyOwner {
        emissionPerBlock = _emissionPerBlock;
    }

    /// @notice Function to prevent further staking
    function setStakingPaused(bool _isPaused) external onlyOwner {
        stakingPaused = _isPaused;
        emit SetStakingPaused(stakingPaused);
    }

    ///@notice Function to turn on variable rewards
    function setVariableReward(bool _isVariableReward) external onlyOwner {
        require(isVariableReward != _isVariableReward, "Nothing changed");
        isVariableReward = _isVariableReward;
        emit SetVariableReward(isVariableReward);
    }

    ///@notice Function to change stake target for variable rewards
    function setStakeTarget(uint256 _stakeTarget) external onlyOwner {
        require(_stakeTarget > 0, "Please don't break the math!");
        stakeTarget = _stakeTarget;
        emit SetStakeTarget(stakeTarget);
    }

    /// @notice Function for admin to transfer axos out of contract back to original owner
    function adminTransfer(uint256[] memory tokenIds) external onlyOwner {
        require(tokenIds.length > 0, "Nothing to unstake");
        totalStaked -= tokenIds.length;
        for (uint256 i = 0; i < tokenIds.length; i++) {
            address owner = stakedAxos[tokenIds[i]];
            require(owner != address(0), "Axo not found");
            stakers[owner].numStaked--;
            delete stakedAxos[tokenIds[i]];
            IERC721(AXOLITTLES).transferFrom(address(this), owner, tokenIds[i]);
        }
        emit AdminTransfer(tokenIds);
    }
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"_axolittles","type":"address"},{"internalType":"address","name":"_token","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"AdminTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"totalReward","type":"uint256"}],"name":"Claim","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"stakeTarget","type":"uint256"}],"name":"SetStakeTarget","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_stakingPaused","type":"bool"}],"name":"SetStakingPaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_isVariableReward","type":"bool"}],"name":"SetVariableReward","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"Stake","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"Unstake","type":"event"},{"inputs":[],"name":"AXOLITTLES","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"adminTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_staker_address","type":"address"}],"name":"checkReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"emissionPerBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isVariableReward","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_axolittlesAddress","type":"address"}],"name":"setAxolittlesAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_emissionPerBlock","type":"uint256"}],"name":"setEmissionPerBlock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_stakeTarget","type":"uint256"}],"name":"setStakeTarget","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isPaused","type":"bool"}],"name":"setStakingPaused","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"name":"setTokenAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isVariableReward","type":"bool"}],"name":"setVariableReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeTarget","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"stakedAxos","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"stakers","outputs":[{"internalType":"uint256","name":"numStaked","type":"uint256"},{"internalType":"uint256","name":"blockSinceLastCalc","type":"uint256"},{"internalType":"uint256","name":"calcedReward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakingPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405261177060035566354a6ba7a1800060045534801561002157600080fd5b50604051620014e6380380620014e6833981016040819052610042916100e8565b61004b3361007c565b600180546001600160a01b039384166001600160a01b0319918216179091556002805492909316911617905561011b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146100e357600080fd5b919050565b600080604083850312156100fb57600080fd5b610104836100cc565b9150610112602084016100cc565b90509250929050565b6113bb806200012b6000396000f3fe608060405234801561001057600080fd5b50600436106101825760003560e01c80639168ae72116100d8578063c95986a21161008c578063ea26afd711610066578063ea26afd71461034f578063ef26a5e914610362578063f2fde38b1461037657600080fd5b8063c95986a214610320578063cf20dae414610329578063e449f3411461033c57600080fd5b8063ba5e2ada116100bd578063ba5e2ada146102c0578063bbb781cc146102e9578063c3c90e641461030d57600080fd5b80639168ae721461026357806399cd4a93146102ad57600080fd5b8063566e32421161013a57806382bfefc81161011457806382bfefc8146102145780638cbde2a71461023f5780638da5cb5b1461025257600080fd5b8063566e3242146101e6578063710fe5cd146101f9578063715018a61461020c57600080fd5b806326a4e8d21161016b57806326a4e8d2146101af5780634e71d92d146101c25780634eb05c47146101ca57600080fd5b80630fbf0a931461018757806315b31bbb1461019c575b600080fd5b61019a610195366004611151565b610389565b005b61019a6101aa36600461120f565b61060e565b61019a6101bd366004611231565b61068d565b61019a6106c4565b6101d360035481565b6040519081526020015b60405180910390f35b61019a6101f4366004611231565b6107ed565b61019a61020736600461125a565b610824565b61019a610831565b600254610227906001600160a01b031681565b6040516001600160a01b0390911681526020016101dd565b61019a61024d366004611151565b610845565b6000546001600160a01b0316610227565b610292610271366004611231565b60066020526000908152604090208054600182015460029092015490919083565b604080519384526020840192909252908201526060016101dd565b600154610227906001600160a01b031681565b6102276102ce36600461125a565b6007602052600090815260409020546001600160a01b031681565b6002546102fd90600160a01b900460ff1681565b60405190151581526020016101dd565b6101d361031b366004611231565b610abf565b6101d360045481565b61019a61033736600461120f565b610ad0565b61019a61034a366004611151565b610ba9565b61019a61035d36600461125a565b610e88565b6002546102fd90600160a81b900460ff1681565b61019a610384366004611231565b610f15565b600254600160a01b900460ff16156103e85760405162461bcd60e51b815260206004820152601160248201527f5374616b696e672069732070617573656400000000000000000000000000000060448201526064015b60405180910390fd5b60008151116104395760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f207374616b650000000000000000000000000000000060448201526064016103df565b61044233610fa5565b3360009081526006602052604081206002810192909255825182549092919061046c908490611289565b9091555050336000908152600660205260408120436001909101558151600580549192909161049c908490611289565b90915550600090505b81518110156105c95760015482516001600160a01b03909116906323b872dd90339030908690869081106104db576104db6112a1565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606401600060405180830381600087803b15801561054d57600080fd5b505af1158015610561573d6000803e3d6000fd5b50505050336007600084848151811061057c5761057c6112a1565b6020026020010151815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080806105c1906112b7565b9150506104a5565b50336001600160a01b03167fbd6539044374e650773e9c709c54c777fc38f8ff96c2619e7012817e0f987cfa8260405161060391906112d2565b60405180910390a250565b610616611084565b600280547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b8315158102919091179182905560405160ff9190920416151581527f04c3664b866a04a54e0d35b2c5871c40a787d79f5c1c02126e02f54e5ea1eb29906020015b60405180910390a150565b610695611084565b6002805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b60006106cf33610fa5565b9050600081116107215760405162461bcd60e51b815260206004820152601060248201527f4e6f7468696e6720746f20636c61696d0000000000000000000000000000000060448201526064016103df565b33600081815260066020526040808220436001820155600290810192909255905490517f40c10f190000000000000000000000000000000000000000000000000000000081526004810192909252602482018390526001600160a01b0316906340c10f1990604401600060405180830381600087803b1580156107a357600080fd5b505af11580156107b7573d6000803e3d6000fd5b50506040518381523392507f47cee97cb7acd717b3c0aa1435d004cd5b3c8c57d70dbceb4e4458bbd60e39d49150602001610603565b6107f5611084565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b61082c611084565b600455565b610839611084565b61084360006110de565b565b61084d611084565b600081511161089e5760405162461bcd60e51b815260206004820152601260248201527f4e6f7468696e6720746f20756e7374616b65000000000000000000000000000060448201526064016103df565b8051600560008282546108b19190611316565b90915550600090505b8151811015610a8f576000600760008484815181106108db576108db6112a1565b6020908102919091018101518252810191909152604001600020546001600160a01b031690508061094e5760405162461bcd60e51b815260206004820152600d60248201527f41786f206e6f7420666f756e640000000000000000000000000000000000000060448201526064016103df565b6001600160a01b03811660009081526006602052604081208054916109728361132d565b91905055506007600084848151811061098d5761098d6112a1565b6020026020010151815260200190815260200160002060006101000a8154906001600160a01b030219169055600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd30838686815181106109f1576109f16112a1565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606401600060405180830381600087803b158015610a6357600080fd5b505af1158015610a77573d6000803e3d6000fd5b50505050508080610a87906112b7565b9150506108ba565b507f897865c455f722e6e507288c19b97503dec253869849c341071c37bfa9f717068160405161068291906112d2565b6000610aca82610fa5565b92915050565b610ad8611084565b60025460ff600160a81b9091041615158115151415610b395760405162461bcd60e51b815260206004820152600f60248201527f4e6f7468696e67206368616e676564000000000000000000000000000000000060448201526064016103df565b600280547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16600160a81b8315158102919091179182905560405160ff9190920416151581527f6b22d32c77251a0aceafc0e4c78096cf5ef73f161c16f85497edead137dd88eb90602001610682565b6000815111610bfa5760405162461bcd60e51b815260206004820152601260248201527f4e6f7468696e6720746f20756e7374616b65000000000000000000000000000060448201526064016103df565b3360009081526006602052604090205481511115610c4a5760405162461bcd60e51b815260206004820152600d60248201526c4e6f7420796f75722061786f2160981b60448201526064016103df565b610c5333610fa5565b33600090815260066020526040812060028101929092558251825490929190610c7d908490611316565b90915550503360009081526006602052604081204360019091015581516005805491929091610cad908490611316565b90915550600090505b8151811015610e4e5760076000838381518110610cd557610cd56112a1565b6020908102919091018101518252810191909152604001600020546001600160a01b03163314610d375760405162461bcd60e51b815260206004820152600d60248201526c4e6f7420796f75722061786f2160981b60448201526064016103df565b60076000838381518110610d4d57610d4d6112a1565b6020026020010151815260200190815260200160002060006101000a8154906001600160a01b030219169055600160009054906101000a90046001600160a01b03166001600160a01b03166323b872dd3033858581518110610db157610db16112a1565b60209081029190910101516040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b0393841660048201529290911660248301526044820152606401600060405180830381600087803b158015610e2357600080fd5b505af1158015610e37573d6000803e3d6000fd5b505050508080610e46906112b7565b915050610cb6565b50336001600160a01b03167f8537ffc096ba30690173694a1630e9cdad3b912b48980d0127edbcfe80076b618260405161060391906112d2565b610e90611084565b60008111610ee05760405162461bcd60e51b815260206004820152601c60248201527f506c6561736520646f6e277420627265616b20746865206d617468210000000060448201526064016103df565b60038190556040518181527f30df07121af80c9a50a8fcfddf8aa9f537a550edb930294c6370d4c05632ba1590602001610682565b610f1d611084565b6001600160a01b038116610f995760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016103df565b610fa2816110de565b50565b6001600160a01b0381166000908152600660205260408120600101548190610fcd9043611316565b6004546001600160a01b038516600090815260066020526040902054610ff39190611344565b610ffd9190611344565b600254909150600160a81b900460ff1615611056576003546005541061102f57611028600282611344565b9050611056565b60035460055461103f9083611344565b6110499190611363565b6110539082611289565b90505b6001600160a01b03831660009081526006602052604090206002015461107d908290611289565b9392505050565b6000546001600160a01b031633146108435760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103df565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561116457600080fd5b823567ffffffffffffffff8082111561117c57600080fd5b818501915085601f83011261119057600080fd5b8135818111156111a2576111a261113b565b8060051b604051601f19603f830116810181811085821117156111c7576111c761113b565b6040529182528482019250838101850191888311156111e557600080fd5b938501935b82851015611203578435845293850193928501926111ea565b98975050505050505050565b60006020828403121561122157600080fd5b8135801515811461107d57600080fd5b60006020828403121561124357600080fd5b81356001600160a01b038116811461107d57600080fd5b60006020828403121561126c57600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b6000821982111561129c5761129c611273565b500190565b634e487b7160e01b600052603260045260246000fd5b60006000198214156112cb576112cb611273565b5060010190565b6020808252825182820181905260009190848201906040850190845b8181101561130a578351835292840192918401916001016112ee565b50909695505050505050565b60008282101561132857611328611273565b500390565b60008161133c5761133c611273565b506000190190565b600081600019048311821515161561135e5761135e611273565b500290565b60008261138057634e487b7160e01b600052601260045260246000fd5b50049056fea264697066735822122073e727900196b22de431f7ec4285159cbdadf921e34d67c8f37befe1b7a55f9764736f6c634300080a0033000000000000000000000000cc737e05a6b5d94cafa523e55c5689631c8e97a4000000000000000000000000bb113ad1b7c4615ccf59a5d8a4062335038d6ee5

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

000000000000000000000000cc737e05a6b5d94cafa523e55c5689631c8e97a4000000000000000000000000bb113ad1b7c4615ccf59a5d8a4062335038d6ee5

-----Decoded View---------------
Arg [0] : _axolittles (address): 0xcc737e05a6b5d94cafa523e55c5689631c8e97a4
Arg [1] : _token (address): 0xbb113ad1b7c4615ccf59a5d8a4062335038d6ee5

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000cc737e05a6b5d94cafa523e55c5689631c8e97a4
Arg [1] : 000000000000000000000000bb113ad1b7c4615ccf59a5d8a4062335038d6ee5


Deployed ByteCode Sourcemap

9687:6725:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11184:730;;;;;;:::i;:::-;;:::i;:::-;;14978:152;;;;;;:::i;:::-;;:::i;14589:107::-;;;;;;:::i;:::-;;:::i;12950:416::-;;;:::i;9858:33::-;;;;;;;;;2061:25:1;;;2049:2;2034:18;9858:33:0;;;;;;;;14371:150;;;;;;:::i;:::-;;:::i;14787:130::-;;;;;;:::i;:::-;;:::i;8550:103::-;;;:::i;9764:20::-;;;;;-1:-1:-1;;;;;9764:20:0;;;;;;-1:-1:-1;;;;;2446:55:1;;;2428:74;;2416:2;2401:18;9764:20:0;2282:226:1;15841:568:0;;;;;;:::i;:::-;;:::i;7902:87::-;7948:7;7975:6;-1:-1:-1;;;;;7975:6:0;7902:87;;10485:41;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2715:25:1;;;2771:2;2756:18;;2749:34;;;;2799:18;;;2792:34;2703:2;2688:18;10485:41:0;2513:319:1;9732:25:0;;;;;-1:-1:-1;;;;;9732:25:0;;;10533:45;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;10533:45:0;;;9791:25;;;;;-1:-1:-1;;;9791:25:0;;;;;;;;;3002:14:1;;2995:22;2977:41;;2965:2;2950:18;9791:25:0;2837:187:1;13436:173:0;;;;;;:::i;:::-;;:::i;9968:51::-;;;;;;15191:252;;;;;;:::i;:::-;;:::i;12023:875::-;;;;;;:::i;:::-;;:::i;15520:221::-;;;;;;:::i;:::-;;:::i;9823:28::-;;;;;-1:-1:-1;;;9823:28:0;;;;;;8808:201;;;;;;:::i;:::-;;:::i;11184:730::-;11255:13;;-1:-1:-1;;;11255:13:0;;;;11254:14;11246:44;;;;-1:-1:-1;;;11246:44:0;;3231:2:1;11246:44:0;;;3213:21:1;3270:2;3250:18;;;3243:30;3309:19;3289:18;;;3282:47;3346:18;;11246:44:0;;;;;;;;;11327:1;11309:8;:15;:19;11301:48;;;;-1:-1:-1;;;11301:48:0;;3577:2:1;11301:48:0;;;3559:21:1;3616:2;3596:18;;;3589:30;3655:18;3635;;;3628:46;3691:18;;11301:48:0;3375:340:1;11301:48:0;11395:32;11416:10;11395:20;:32::i;:::-;11368:10;11360:19;;;;:7;:19;;;;;:32;;;:67;;;;11471:15;;11438:48;;11471:15;;11360:19;;11438:48;;11471:15;;11438:48;:::i;:::-;;;;-1:-1:-1;;11505:10:0;11497:19;;;;:7;:19;;;;;11538:12;11497:38;;;;:53;11576:15;;11561:11;:30;;11576:15;;11561:11;;:30;;11576:15;;11561:30;:::i;:::-;;;;-1:-1:-1;11607:9:0;;-1:-1:-1;11602:262:0;11626:8;:15;11622:1;:19;11602:262;;;11671:10;;11775:11;;-1:-1:-1;;;;;11671:10:0;;;;11663:32;;11714:10;;11751:4;;11775:8;;11784:1;;11775:11;;;;;;:::i;:::-;;;;;;;;;;;11663:138;;;;;;;;;;-1:-1:-1;;;;;4512:15:1;;;11663:138:0;;;4494:34:1;4564:15;;;;4544:18;;;4537:43;4596:18;;;4589:34;4406:18;;11663:138:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11842:10;11816;:23;11827:8;11836:1;11827:11;;;;;;;;:::i;:::-;;;;;;;11816:23;;;;;;;;;;;;:36;;;;;-1:-1:-1;;;;;11816:36:0;;;;;-1:-1:-1;;;;;11816:36:0;;;;;;11643:3;;;;;:::i;:::-;;;;11602:262;;;;11885:10;-1:-1:-1;;;;;11879:27:0;;11897:8;11879:27;;;;;;:::i;:::-;;;;;;;;11184:730;:::o;14978:152::-;7788:13;:11;:13::i;:::-;15050::::1;:25:::0;;;::::1;-1:-1:-1::0;;;15050:25:0;::::1;;::::0;::::1;::::0;;;::::1;::::0;;;;15091:31:::1;::::0;15050:25:::1;15108:13:::0;;;::::1;;3002:14:1::0;2995:22;2977:41;;15091:31:0::1;::::0;2965:2:1;2950:18;15091:31:0::1;;;;;;;;14978:152:::0;:::o;14589:107::-;7788:13;:11;:13::i;:::-;14667:5:::1;:21:::0;;-1:-1:-1;;14667:21:0::1;-1:-1:-1::0;;;;;14667:21:0;;;::::1;::::0;;;::::1;::::0;;14589:107::o;12950:416::-;13036:19;13058:32;13079:10;13058:20;:32::i;:::-;13036:54;;13123:1;13109:11;:15;13101:44;;;;-1:-1:-1;;;13101:44:0;;5613:2:1;13101:44:0;;;5595:21:1;5652:2;5632:18;;;5625:30;5691:18;5671;;;5664:46;5727:18;;13101:44:0;5411:340:1;13101:44:0;13164:10;13156:19;;;;:7;:19;;;;;;13197:12;13156:38;;;:53;13220:32;;;;:36;;;;13276:5;;13267:45;;;;;;;;5930:74:1;;;;6020:18;;;6013:34;;;-1:-1:-1;;;;;13276:5:0;;13267:20;;5903:18:1;;13267:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;13328:30:0;;2061:25:1;;;13334:10:0;;-1:-1:-1;13328:30:0;;-1:-1:-1;2049:2:1;2034:18;13328:30:0;1915:177:1;14371:150:0;7788:13;:11;:13::i;:::-;14482:10:::1;:31:::0;;-1:-1:-1;;14482:31:0::1;-1:-1:-1::0;;;;;14482:31:0;;;::::1;::::0;;;::::1;::::0;;14371:150::o;14787:130::-;7788:13;:11;:13::i;:::-;14873:16:::1;:36:::0;14787:130::o;8550:103::-;7788:13;:11;:13::i;:::-;8615:30:::1;8642:1;8615:18;:30::i;:::-;8550:103::o:0;15841:568::-;7788:13;:11;:13::i;:::-;15947:1:::1;15929:8;:15;:19;15921:50;;;::::0;-1:-1:-1;;;15921:50:0;;6260:2:1;15921:50:0::1;::::0;::::1;6242:21:1::0;6299:2;6279:18;;;6272:30;6338:20;6318:18;;;6311:48;6376:18;;15921:50:0::1;6058:342:1::0;15921:50:0::1;15997:8;:15;15982:11;;:30;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;16028:9:0::1;::::0;-1:-1:-1;16023:340:0::1;16047:8;:15;16043:1;:19;16023:340;;;16084:13;16100:10;:23;16111:8;16120:1;16111:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;16100:23;;;::::1;::::0;;;;;;-1:-1:-1;16100:23:0;;-1:-1:-1;;;;;16100:23:0::1;::::0;-1:-1:-1;16146:19:0;16138:45:::1;;;::::0;-1:-1:-1;;;16138:45:0;;6737:2:1;16138:45:0::1;::::0;::::1;6719:21:1::0;6776:2;6756:18;;;6749:30;6815:15;6795:18;;;6788:43;6848:18;;16138:45:0::1;6535:337:1::0;16138:45:0::1;-1:-1:-1::0;;;;;16198:14:0;::::1;;::::0;;;:7:::1;:14;::::0;;;;:26;;;::::1;::::0;::::1;:::i;:::-;;;;;;16246:10;:23;16257:8;16266:1;16257:11;;;;;;;;:::i;:::-;;;;;;;16246:23;;;;;;;;;;;;16239:30;;;;;-1:-1:-1::0;;;;;16239:30:0::1;;;;;16292:10;;;;;;;;;-1:-1:-1::0;;;;;16292:10:0::1;-1:-1:-1::0;;;;;16284:32:0::1;;16325:4;16332:5;16339:8;16348:1;16339:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;16284:67:::1;::::0;;::::1;::::0;;;;;;-1:-1:-1;;;;;4512:15:1;;;16284:67:0::1;::::0;::::1;4494:34:1::0;4564:15;;;;4544:18;;;4537:43;4596:18;;;4589:34;4406:18;;16284:67:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16069:294;16064:3;;;;;:::i;:::-;;;;16023:340;;;;16378:23;16392:8;16378:23;;;;;;:::i;13436:173::-:0;13532:7;13564:37;13585:15;13564:20;:37::i;:::-;13557:44;13436:173;-1:-1:-1;;13436:173:0:o;15191:252::-;7788:13;:11;:13::i;:::-;15280:16:::1;::::0;::::1;-1:-1:-1::0;;;15280:16:0;;::::1;;:37;;::::0;::::1;;;;15272:65;;;::::0;-1:-1:-1;;;15272:65:0;;7220:2:1;15272:65:0::1;::::0;::::1;7202:21:1::0;7259:2;7239:18;;;7232:30;7298:17;7278:18;;;7271:45;7333:18;;15272:65:0::1;7018:339:1::0;15272:65:0::1;15348:16;:36:::0;;;::::1;-1:-1:-1::0;;;15348:36:0;::::1;;::::0;::::1;::::0;;;::::1;::::0;;;;15400:35:::1;::::0;15348:36:::1;15418:16:::0;;;::::1;;3002:14:1::0;2995:22;2977:41;;15400:35:0::1;::::0;2965:2:1;2950:18;15400:35:0::1;2837:187:1::0;12023:875:0;12113:1;12095:8;:15;:19;12087:50;;;;-1:-1:-1;;;12087:50:0;;6260:2:1;12087:50:0;;;6242:21:1;6299:2;6279:18;;;6272:30;6338:20;6318:18;;;6311:48;6376:18;;12087:50:0;6058:342:1;12087:50:0;12197:10;12189:19;;;;:7;:19;;;;;:29;12170:15;;:48;;12148:111;;;;-1:-1:-1;;;12148:111:0;;7564:2:1;12148:111:0;;;7546:21:1;7603:2;7583:18;;;7576:30;-1:-1:-1;;;7622:18:1;;;7615:43;7675:18;;12148:111:0;7362:337:1;12148:111:0;12305:32;12326:10;12305:20;:32::i;:::-;12278:10;12270:19;;;;:7;:19;;;;;:32;;;:67;;;;12381:15;;12348:48;;12381:15;;12270:19;;12348:48;;12381:15;;12348:48;:::i;:::-;;;;-1:-1:-1;;12415:10:0;12407:19;;;;:7;:19;;;;;12448:12;12407:38;;;;:53;12486:15;;12471:11;:30;;12486:15;;12471:11;;:30;;12486:15;;12471:30;:::i;:::-;;;;-1:-1:-1;12517:9:0;;-1:-1:-1;12512:334:0;12536:8;:15;12532:1;:19;12512:334;;;12595:10;:23;12606:8;12615:1;12606:11;;;;;;;;:::i;:::-;;;;;;;;;;;;12595:23;;;;;;;;;;-1:-1:-1;12595:23:0;;-1:-1:-1;;;;;12595:23:0;12581:10;:37;12573:63;;;;-1:-1:-1;;;12573:63:0;;7564:2:1;12573:63:0;;;7546:21:1;7603:2;7583:18;;;7576:30;-1:-1:-1;;;7622:18:1;;;7615:43;7675:18;;12573:63:0;7362:337:1;12573:63:0;12658:10;:23;12669:8;12678:1;12669:11;;;;;;;;:::i;:::-;;;;;;;12658:23;;;;;;;;;;;;12651:30;;;;;-1:-1:-1;;;;;12651:30:0;;;;;12704:10;;;;;;;;;-1:-1:-1;;;;;12704:10:0;-1:-1:-1;;;;;12696:32:0;;12755:4;12779:10;12808:8;12817:1;12808:11;;;;;;;;:::i;:::-;;;;;;;;;;;12696:138;;;;;;;;;;-1:-1:-1;;;;;4512:15:1;;;12696:138:0;;;4494:34:1;4564:15;;;;4544:18;;;4537:43;4596:18;;;4589:34;4406:18;;12696:138:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12553:3;;;;;:::i;:::-;;;;12512:334;;;;12869:10;-1:-1:-1;;;;;12861:29:0;;12881:8;12861:29;;;;;;:::i;15520:221::-;7788:13;:11;:13::i;:::-;15619:1:::1;15604:12;:16;15596:57;;;::::0;-1:-1:-1;;;15596:57:0;;7906:2:1;15596:57:0::1;::::0;::::1;7888:21:1::0;7945:2;7925:18;;;7918:30;7984;7964:18;;;7957:58;8032:18;;15596:57:0::1;7704:352:1::0;15596:57:0::1;15664:11;:26:::0;;;15706:27:::1;::::0;2061:25:1;;;15706:27:0::1;::::0;2049:2:1;2034:18;15706:27:0::1;1915:177:1::0;8808:201:0;7788:13;:11;:13::i;:::-;-1:-1:-1;;;;;8897:22:0;::::1;8889:73;;;::::0;-1:-1:-1;;;8889:73:0;;8263:2:1;8889:73:0::1;::::0;::::1;8245:21:1::0;8302:2;8282:18;;;8275:30;8341:34;8321:18;;;8314:62;8412:8;8392:18;;;8385:36;8438:19;;8889:73:0::1;8061:402:1::0;8889:73:0::1;8973:28;8992:8;8973:18;:28::i;:::-;8808:201:::0;:::o;13688:601::-;-1:-1:-1;;;;;13936:24:0;;13793:7;13936:24;;;:7;:24;;;;;:43;;;13793:7;;13921:58;;:12;:58;:::i;:::-;13888:16;;-1:-1:-1;;;;;13838:24:0;;;;;;:7;:24;;;;;:34;:66;;13888:16;13838:66;:::i;:::-;:142;;;;:::i;:::-;13997:16;;13818:162;;-1:-1:-1;;;;13997:16:0;;;;13993:222;;;14049:11;;14034;;:26;14030:174;;14081:14;14094:1;14081:14;;:::i;:::-;;;14030:174;;;14177:11;;14162;;14150:23;;:9;:23;:::i;:::-;14149:39;;;;:::i;:::-;14136:52;;;;:::i;:::-;;;14030:174;-1:-1:-1;;;;;14232:24:0;;;;;;:7;:24;;;;;:37;;;:49;;14272:9;;14232:49;:::i;:::-;14225:56;13688:601;-1:-1:-1;;;13688:601:0:o;8067:132::-;7948:7;7975:6;-1:-1:-1;;;;;7975:6:0;6527:10;8131:23;8123:68;;;;-1:-1:-1;;;8123:68:0;;9122:2:1;8123:68:0;;;9104:21:1;;;9141:18;;;9134:30;9200:34;9180:18;;;9173:62;9252:18;;8123:68:0;8920:356:1;9169:191:0;9243:16;9262:6;;-1:-1:-1;;;;;9279:17:0;;;-1:-1:-1;;9279:17:0;;;;;;9312:40;;9262:6;;;;;;;9312:40;;9243:16;9312:40;9232:128;9169:191;:::o;14:184:1:-;-1:-1:-1;;;63:1:1;56:88;163:4;160:1;153:15;187:4;184:1;177:15;203:1115;287:6;318:2;361;349:9;340:7;336:23;332:32;329:52;;;377:1;374;367:12;329:52;417:9;404:23;446:18;487:2;479:6;476:14;473:34;;;503:1;500;493:12;473:34;541:6;530:9;526:22;516:32;;586:7;579:4;575:2;571:13;567:27;557:55;;608:1;605;598:12;557:55;644:2;631:16;666:2;662;659:10;656:36;;;672:18;;:::i;:::-;718:2;715:1;711:10;750:2;744:9;813:2;809:7;804:2;800;796:11;792:25;784:6;780:38;868:6;856:10;853:22;848:2;836:10;833:18;830:46;827:72;;;879:18;;:::i;:::-;915:2;908:22;965:18;;;999:15;;;;-1:-1:-1;1041:11:1;;;1037:20;;;1069:19;;;1066:39;;;1101:1;1098;1091:12;1066:39;1125:11;;;;1145:142;1161:6;1156:3;1153:15;1145:142;;;1227:17;;1215:30;;1178:12;;;;1265;;;;1145:142;;;1306:6;203:1115;-1:-1:-1;;;;;;;;203:1115:1:o;1323:273::-;1379:6;1432:2;1420:9;1411:7;1407:23;1403:32;1400:52;;;1448:1;1445;1438:12;1400:52;1487:9;1474:23;1540:5;1533:13;1526:21;1519:5;1516:32;1506:60;;1562:1;1559;1552:12;1601:309;1660:6;1713:2;1701:9;1692:7;1688:23;1684:32;1681:52;;;1729:1;1726;1719:12;1681:52;1768:9;1755:23;-1:-1:-1;;;;;1811:5:1;1807:54;1800:5;1797:65;1787:93;;1876:1;1873;1866:12;2097:180;2156:6;2209:2;2197:9;2188:7;2184:23;2180:32;2177:52;;;2225:1;2222;2215:12;2177:52;-1:-1:-1;2248:23:1;;2097:180;-1:-1:-1;2097:180:1:o;3720:184::-;-1:-1:-1;;;3769:1:1;3762:88;3869:4;3866:1;3859:15;3893:4;3890:1;3883:15;3909:128;3949:3;3980:1;3976:6;3973:1;3970:13;3967:39;;;3986:18;;:::i;:::-;-1:-1:-1;4022:9:1;;3909:128::o;4042:184::-;-1:-1:-1;;;4091:1:1;4084:88;4191:4;4188:1;4181:15;4215:4;4212:1;4205:15;4634:135;4673:3;-1:-1:-1;;4694:17:1;;4691:43;;;4714:18;;:::i;:::-;-1:-1:-1;4761:1:1;4750:13;;4634:135::o;4774:632::-;4945:2;4997:21;;;5067:13;;4970:18;;;5089:22;;;4916:4;;4945:2;5168:15;;;;5142:2;5127:18;;;4916:4;5211:169;5225:6;5222:1;5219:13;5211:169;;;5286:13;;5274:26;;5355:15;;;;5320:12;;;;5247:1;5240:9;5211:169;;;-1:-1:-1;5397:3:1;;4774:632;-1:-1:-1;;;;;;4774:632:1:o;6405:125::-;6445:4;6473:1;6470;6467:8;6464:34;;;6478:18;;:::i;:::-;-1:-1:-1;6515:9:1;;6405:125::o;6877:136::-;6916:3;6944:5;6934:39;;6953:18;;:::i;:::-;-1:-1:-1;;;6989:18:1;;6877:136::o;8468:168::-;8508:7;8574:1;8570;8566:6;8562:14;8559:1;8556:21;8551:1;8544:9;8537:17;8533:45;8530:71;;;8581:18;;:::i;:::-;-1:-1:-1;8621:9:1;;8468:168::o;8641:274::-;8681:1;8707;8697:189;;-1:-1:-1;;;8739:1:1;8732:88;8843:4;8840:1;8833:15;8871:4;8868:1;8861:15;8697:189;-1:-1:-1;8900:9:1;;8641:274::o

Metadata Hash

73e727900196b22de431f7ec4285159cbdadf921e34d67c8f37befe1b7a55f97
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.