Contract 0xd41fdb03ba84762dd66a0af1a6c8540ff1ba5dfb

 

Contract Overview

SafePal: SFP Token
Balance:
0 BNB

BNB Value:
$0.00

Token:
Txn Hash
Block
From
To
Value [Txn Fee]
0xbfa8050f47c78ceb5fa107bce607db3e681433a3f4b1c59aa3e96219a943cda882869282021-06-14 10:03:061 min ago0x1471d85cb1dc0d4c8a04701790e40583347b1c4e IN  SafePal: SFP Token0 BNB0.000106805
0x446d9b6adb05fb171c1e9a0b29ad2b1e1c31c69511308d01ec175614aa362be282868782021-06-14 10:00:323 mins ago0xded7b57b1dad6ba77599902eb2005368832e9976 IN  SafePal: SFP Token0 BNB0.000107045
0x3c1a62d46f62b62b02a5077ee8e70f4be2037dc82d301f1aec4b82d9d315e86582867382021-06-14 9:53:3210 mins ago0xc88b0cc4f2395baf77564e8349d5e906c6ca9488 IN  SafePal: SFP Token0 BNB0.000218382
0x2e1d1e20b04db3bc3b52f8b13b6e8f220c34efb164c3ab6283118fc93d3d860a82866992021-06-14 9:51:3512 mins ago0x0059cfe4a5914f0a719c8536cd38157794e23dac IN  SafePal: SFP Token0 BNB0.0002224
0x32918ce5a730b688d67cd4a48fc4f9eb8c124b6e3ce1be823d0d6120714152d782866542021-06-14 9:49:2014 mins ago0x33434e36bcc46c951a708515ae4ac5aa68f80c06 IN  SafePal: SFP Token0 BNB0.0002224
0xc69deace1cb213b37bee86ef92d9efc0a8a1c43ac23fe44d054534008483d4cd82866522021-06-14 9:49:1414 mins ago0xa2fbfeb513079f8ed18dc074855014a0a7ea6689 IN  SafePal: SFP Token0 BNB0.00021831
0x73cd12618466eac5a8b525cf0532b72384a7321e2943aaf37cec6c0ab45c5b2382865542021-06-14 9:44:2019 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00051385
0x331184672066f0772d6fdeeb20a1e153c8501f2fd61be6ed3bd40347b35ef14a82864342021-06-14 9:38:2025 mins agoBinance: Hot Wallet 7 IN  SafePal: SFP Token0 BNB0.00036361
0x6d1e601a2c0008a9a5ae26bec7c3ce6ebf802ea8172387e8ed67a23a211fcf8582863952021-06-14 9:36:2327 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036361
0xafe7ffeeb8ba424cd388a9dd6127ee92ad86e3de7872f14e5e0868860cc8a79582863502021-06-14 9:34:0829 mins ago0x0b2ccdefcb4366f04058faa9851510c59f5c01c9 IN  SafePal: SFP Token0 BNB0.000106865
0x65401b58c35b327a2abef227eb9fbdb4af3f368789b337f25259235aeb3f391e82862972021-06-14 9:31:2932 mins ago0x5667f1d8ac34fb8517b56f08f055949295e8c679 IN  SafePal: SFP Token0 BNB0.000106865
0x6d092a770b2129e045d09eaac1e160f7821a038239750fcb35736b70438601ef82862932021-06-14 9:31:1732 mins ago0x92c153e8c44f159f876a3085282102436c836772 IN  SafePal: SFP Token0 BNB0.000106865
0x76513c9bd1735a110e1d89e3cdfb20cfc7dc348593b60078f0e9a97ef10765a582862832021-06-14 9:30:4733 mins ago0x8cc23026a28d7380beff4f22c497eaea8d21c784 IN  SafePal: SFP Token0 BNB0.0002224
0xac63c19e2a46293bfb1580ef5702ff6692efe9f79c60921def0922cad70941ee82862752021-06-14 9:30:2333 mins agoBinance: Hot Wallet 7 IN  SafePal: SFP Token0 BNB0.00036361
0x6f4e61e31882f407d89c69de0a1f116157c560620a4ff2bd95b48ef06f8e313c82862752021-06-14 9:30:2333 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036373
0x70d543394c15e5f76f7fa566b1f0dcfcff54c2ed384b7a8f10b4b93ce669c62482862702021-06-14 9:30:0833 mins ago0x880cc6507565dfed230f6d83b0d7e9b7d59f1434 IN  SafePal: SFP Token0 BNB0.000106865
0xb9eab00a2a788a3d1b9e5ce9eadf6a42b6a60bd1707808ea4328ce8bf551428c82862342021-06-14 9:28:2035 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036373
0x3e3a6e37da50eeb611d34d0ad2bf30aab67d4a5a126c84e982391385bbd843e382861552021-06-14 9:24:2339 mins agoBinance: Hot Wallet 7 IN  SafePal: SFP Token0 BNB0.00036361
0x15218702e347e674add0e4229c11b06ae066c451d343a0687a1803eb8c8ea28082861542021-06-14 9:24:2039 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036361
0x90f333f73e2cea7643ce3e11f2f7406756f0b23dc6f653b7b7856717e47234fd82860572021-06-14 9:18:5245 mins ago0x81102ff3b16c54789ad4ae2883df18aa4a2dbeb3 IN  SafePal: SFP Token0 BNB0.000308238
0x3add05fb502e3a8b3755946735f8a6f66820a798e3e48b53160e87f359ff4e0482860482021-06-14 9:18:2545 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036361
0xf85691b9ac2772a5748d10cd1ecafdfc9c10f607e3c98212ce83c639687c113582860092021-06-14 9:16:2347 mins agoBinance: Hot Wallet 7 IN  SafePal: SFP Token0 BNB0.00051385
0x0e769a9efa039204fefe9a866ecef270f52f8a0a7dd4e63c3088db65bf45ef7882860082021-06-14 9:16:2047 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036385
0x86b3017f39762d93c12bda22b611a71ff4f1fcb3c963dfa307005401e6ddc94682858982021-06-14 9:10:4953 mins ago0xe362194e5de5282ab531dc328c8416f6bf6160d1 IN  SafePal: SFP Token0 BNB0.000308238
0x2cf837336d352710c3c4488b12edef55b5c7150feb77bd8e54e299df1f6c217982858922021-06-14 9:10:2353 mins agoBinance: Hot Wallet 6 IN  SafePal: SFP Token0 BNB0.00036361
[ Download CSV Export 

OVERVIEW

SafePal is a cryptocurrency wallet that helps users to protect and grow their decentralized assets.

Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xe690df06ff4d757e45e73c2f9448176abd3c2cfda1e3907d19c6285a0fc9bb1354713342021-03-07 11:59:3998 days 22 hrs ago 0x2b02d43967765b18e31a9621da640588f3550efd SafePal: SFP Token0 BNB
0x87a125b6e843b93c57b772756bcac258c3c6d8cd0fbfd455ca86732ec1a309cd54712922021-03-07 11:57:3398 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x87a125b6e843b93c57b772756bcac258c3c6d8cd0fbfd455ca86732ec1a309cd54712922021-03-07 11:57:3398 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0xf58f56716599ee5876fa9506e7cb633a56383c69f00b5a8eff8127b25e93c65354712742021-03-07 11:56:3998 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0xf58f56716599ee5876fa9506e7cb633a56383c69f00b5a8eff8127b25e93c65354712742021-03-07 11:56:3998 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0x068534faa6637f9ca8551ad3166d9e5b9dd702a23677bf3b5105c79b272100d854712732021-03-07 11:56:3698 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x068534faa6637f9ca8551ad3166d9e5b9dd702a23677bf3b5105c79b272100d854712732021-03-07 11:56:3698 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0xce9e5228fd84406ec29b2d5854ec9040ad5cb682c36209439ac15f83d0b646c554712522021-03-07 11:55:3398 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0xce9e5228fd84406ec29b2d5854ec9040ad5cb682c36209439ac15f83d0b646c554712522021-03-07 11:55:3398 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0x2dd2a9b20418810e8ac026b043d60460c6fe5e6c32e8a625c6b5589bffe148b654712442021-03-07 11:55:0998 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x2dd2a9b20418810e8ac026b043d60460c6fe5e6c32e8a625c6b5589bffe148b654712442021-03-07 11:55:0998 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x5b598a623bb2a53cb5497757b430dcb701e8412b707b989505f5cc9c003ef19f54712432021-03-07 11:55:0698 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x5b598a623bb2a53cb5497757b430dcb701e8412b707b989505f5cc9c003ef19f54712432021-03-07 11:55:0698 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0xfcc111128c83304cf1f5233c5c2d1ef1c91b9055be11e10cb67efe21585a351f54712432021-03-07 11:55:0698 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0xfcc111128c83304cf1f5233c5c2d1ef1c91b9055be11e10cb67efe21585a351f54712432021-03-07 11:55:0698 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0x5d770ef68d42950e310ec3517d2c72fdb6228fabe01821dabc015a7395f00d1854712122021-03-07 11:53:3398 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x5d770ef68d42950e310ec3517d2c72fdb6228fabe01821dabc015a7395f00d1854712122021-03-07 11:53:3398 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
0x12aa07ecbd971caa8094aff19a2f7727e2052b8f559bbde38a9271bd2967336a54712092021-03-07 11:53:2498 days 22 hrs ago PancakeSwap: SFP-BUSD SafePal: SFP Token0 BNB
0x12aa07ecbd971caa8094aff19a2f7727e2052b8f559bbde38a9271bd2967336a54712092021-03-07 11:53:2498 days 22 hrs ago PancakeSwap: SFP-BUSD SafePal: SFP Token0 BNB
0xadc5062edabaa23e49b2ddb99ae182df273d856338dbe5385f5c0db944e1114b54711932021-03-07 11:52:3698 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0xadc5062edabaa23e49b2ddb99ae182df273d856338dbe5385f5c0db944e1114b54711932021-03-07 11:52:3698 days 22 hrs ago 0x03676adaf21a38ed85e72bb9629ec968aefc3d6f SafePal: SFP Token0 BNB
0x3805e8d52e256ec7407e067a9ffd77be9ecbef735aa01f4d9ffa52c415ad84fe54711892021-03-07 11:52:2498 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x3805e8d52e256ec7407e067a9ffd77be9ecbef735aa01f4d9ffa52c415ad84fe54711892021-03-07 11:52:2498 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x59e6087cbfc5e260764dda95c364a9bfe20c84745efc38ff143ac34de4066e5754711772021-03-07 11:51:4898 days 22 hrs ago PancakeSwap: SFP 3 SafePal: SFP Token0 BNB
0x59e6087cbfc5e260764dda95c364a9bfe20c84745efc38ff143ac34de4066e5754711772021-03-07 11:51:4898 days 22 hrs ago PancakeSwap: Router SafePal: SFP Token0 BNB
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SafePalToken

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at BscScan.com on 2020-12-16
*/

// SPDX-License-Identifier: MIT

pragma solidity >=0.6.0 <0.8.0;

/*
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with GSN meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

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

/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow
 * checks.
 *
 * Arithmetic operations in Solidity wrap on overflow. This can easily result
 * in bugs, because programmers usually assume that an overflow raises an
 * error, which is the standard behavior in high level programming languages.
 * `SafeMath` restores this intuition by reverting the transaction when an
 * operation overflows.
 *
 * Using this library instead of the unchecked operations eliminates an entire
 * class of bugs, so it's recommended to use it always.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

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

    mapping (address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    /**
     * @dev Sets the values for {name} and {symbol}, initializes {decimals} with
     * a default value of 18.
     *
     * To select a different value for {decimals}, use {_setupDecimals}.
     *
     * All three of these values are immutable: they can only be set once during
     * construction.
     */
    constructor (string memory name_, string memory symbol_) public {
        _name = name_;
        _symbol = symbol_;
        _decimals = 18;
    }

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

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

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

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

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

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

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

    /**
     * @dev See {IERC20-approve}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least
     * `amount`.
     */
    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

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

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

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

        _beforeTokenTransfer(sender, recipient, amount);

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

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

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

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }

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

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

        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }

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

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

    /**
     * @dev Sets {decimals} to a value other than the default one of 18.
     *
     * WARNING: This function should only be called from the constructor. Most
     * applications that interact with token contracts will not expect
     * {decimals} to ever change, and may work incorrectly if it does.
     */
    function _setupDecimals(uint8 decimals_) internal {
        _decimals = decimals_;
    }

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

contract SafePalToken is ERC20 {
    constructor() public ERC20("SafePal Token", "SFP") {
        _mint(0x3966FF05CCF31dDd9da4f88F98127Efa228AAC89, 500000000 ether);
    }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506040518060400160405280600d81526020017f5361666550616c20546f6b656e000000000000000000000000000000000000008152506040518060400160405280600381526020017f534650000000000000000000000000000000000000000000000000000000000081525081600390805190602001906200009692919062000372565b508060049080519060200190620000af92919062000372565b506012600560006101000a81548160ff021916908360ff160217905550505062000100733966ff05ccf31ddd9da4f88f98127efa228aac896b019d971e4fe8401e740000006200010660201b60201c565b62000418565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001aa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b620001be60008383620002e460201b60201c565b620001da81600254620002e960201b620009a01790919060201c565b60028190555062000238816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620002e960201b620009a01790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b505050565b60008082840190508381101562000368576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620003b557805160ff1916838001178555620003e6565b82800160010185558215620003e6579182015b82811115620003e5578251825591602001919060010190620003c8565b5b509050620003f59190620003f9565b5090565b5b8082111562000414576000816000905550600101620003fa565b5090565b6110e480620004286000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80633950935111610071578063395093511461025857806370a08231146102bc57806395d89b4114610314578063a457c2d714610397578063a9059cbb146103fb578063dd62ed3e1461045f576100a9565b806306fdde03146100ae578063095ea7b31461013157806318160ddd1461019557806323b872dd146101b3578063313ce56714610237575b600080fd5b6100b66104d7565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100f65780820151818401526020810190506100db565b50505050905090810190601f1680156101235780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61017d6004803603604081101561014757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610579565b60405180821515815260200191505060405180910390f35b61019d610597565b6040518082815260200191505060405180910390f35b61021f600480360360608110156101c957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105a1565b60405180821515815260200191505060405180910390f35b61023f61067a565b604051808260ff16815260200191505060405180910390f35b6102a46004803603604081101561026e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610691565b60405180821515815260200191505060405180910390f35b6102fe600480360360208110156102d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610744565b6040518082815260200191505060405180910390f35b61031c61078c565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561035c578082015181840152602081019050610341565b50505050905090810190601f1680156103895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103e3600480360360408110156103ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061082e565b60405180821515815260200191505060405180910390f35b6104476004803603604081101561041157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108fb565b60405180821515815260200191505060405180910390f35b6104c16004803603604081101561047557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610919565b6040518082815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561056f5780601f106105445761010080835404028352916020019161056f565b820191906000526020600020905b81548152906001019060200180831161055257829003601f168201915b5050505050905090565b600061058d610586610a28565b8484610a30565b6001905092915050565b6000600254905090565b60006105ae848484610c27565b61066f846105ba610a28565b61066a8560405180606001604052806028815260200161101960289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610620610a28565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ee89092919063ffffffff16565b610a30565b600190509392505050565b6000600560009054906101000a900460ff16905090565b600061073a61069e610a28565b8461073585600160006106af610a28565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109a090919063ffffffff16565b610a30565b6001905092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b606060048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108245780601f106107f957610100808354040283529160200191610824565b820191906000526020600020905b81548152906001019060200180831161080757829003601f168201915b5050505050905090565b60006108f161083b610a28565b846108ec8560405180606001604052806025815260200161108a6025913960016000610865610a28565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ee89092919063ffffffff16565b610a30565b6001905092915050565b600061090f610908610a28565b8484610c27565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600080828401905083811015610a1e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ab6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806110666024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180610fd16022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610cad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806110416025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180610fae6023913960400191505060405180910390fd5b610d3e838383610fa8565b610da981604051806060016040528060268152602001610ff3602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ee89092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e3c816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546109a090919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290610f95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f5a578082015181840152602081019050610f3f565b50505050905090810190601f168015610f875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212209652645e7f86f1ce7b15de53fd8dfe4341cf00e82b7a674157a89b1fdc2dc59b64736f6c634300060c0033

Deployed ByteCode Sourcemap

19870:177:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11045:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13151:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12120:100;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13802:321;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;11972:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;14532:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12283:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11247:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15253:269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12615:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;12853:151;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11045:83;11082:13;11115:5;11108:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11045:83;:::o;13151:169::-;13234:4;13251:39;13260:12;:10;:12::i;:::-;13274:7;13283:6;13251:8;:39::i;:::-;13308:4;13301:11;;13151:169;;;;:::o;12120:100::-;12173:7;12200:12;;12193:19;;12120:100;:::o;13802:321::-;13908:4;13925:36;13935:6;13943:9;13954:6;13925:9;:36::i;:::-;13972:121;13981:6;13989:12;:10;:12::i;:::-;14003:89;14041:6;14003:89;;;;;;;;;;;;;;;;;:11;:19;14015:6;14003:19;;;;;;;;;;;;;;;:33;14023:12;:10;:12::i;:::-;14003:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;13972:8;:121::i;:::-;14111:4;14104:11;;13802:321;;;;;:::o;11972:83::-;12013:5;12038:9;;;;;;;;;;;12031:16;;11972:83;:::o;14532:218::-;14620:4;14637:83;14646:12;:10;:12::i;:::-;14660:7;14669:50;14708:10;14669:11;:25;14681:12;:10;:12::i;:::-;14669:25;;;;;;;;;;;;;;;:34;14695:7;14669:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;14637:8;:83::i;:::-;14738:4;14731:11;;14532:218;;;;:::o;12283:119::-;12349:7;12376:9;:18;12386:7;12376:18;;;;;;;;;;;;;;;;12369:25;;12283:119;;;:::o;11247:87::-;11286:13;11319:7;11312:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11247:87;:::o;15253:269::-;15346:4;15363:129;15372:12;:10;:12::i;:::-;15386:7;15395:96;15434:15;15395:96;;;;;;;;;;;;;;;;;:11;:25;15407:12;:10;:12::i;:::-;15395:25;;;;;;;;;;;;;;;:34;15421:7;15395:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;15363:8;:129::i;:::-;15510:4;15503:11;;15253:269;;;;:::o;12615:175::-;12701:4;12718:42;12728:12;:10;:12::i;:::-;12742:9;12753:6;12718:9;:42::i;:::-;12778:4;12771:11;;12615:175;;;;:::o;12853:151::-;12942:7;12969:11;:18;12981:5;12969:18;;;;;;;;;;;;;;;:27;12988:7;12969:27;;;;;;;;;;;;;;;;12962:34;;12853:151;;;;:::o;4520:181::-;4578:7;4598:9;4614:1;4610;:5;4598:17;;4639:1;4634;:6;;4626:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4692:1;4685:8;;;4520:181;;;;:::o;613:106::-;666:15;701:10;694:17;;613:106;:::o;18400:346::-;18519:1;18502:19;;:5;:19;;;;18494:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18600:1;18581:21;;:7;:21;;;;18573:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18684:6;18654:11;:18;18666:5;18654:18;;;;;;;;;;;;;;;:27;18673:7;18654:27;;;;;;;;;;;;;;;:36;;;;18722:7;18706:32;;18715:5;18706:32;;;18731:6;18706:32;;;;;;;;;;;;;;;;;;18400:346;;;:::o;16012:539::-;16136:1;16118:20;;:6;:20;;;;16110:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16220:1;16199:23;;:9;:23;;;;16191:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16275:47;16296:6;16304:9;16315:6;16275:20;:47::i;:::-;16355:71;16377:6;16355:71;;;;;;;;;;;;;;;;;:9;:17;16365:6;16355:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;16335:9;:17;16345:6;16335:17;;;;;;;;;;;;;;;:91;;;;16460:32;16485:6;16460:9;:20;16470:9;16460:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;16437:9;:20;16447:9;16437:20;;;;;;;;;;;;;;;:55;;;;16525:9;16508:35;;16517:6;16508:35;;;16536:6;16508:35;;;;;;;;;;;;;;;;;;16012:539;;;:::o;5423:192::-;5509:7;5542:1;5537;:6;;5545:12;5529:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5569:9;5585:1;5581;:5;5569:17;;5606:1;5599:8;;;5423:192;;;;;:::o;19771:92::-;;;;:::o

Swarm Source

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