ETH Price: $2,556.41 (-3.03%)

Transaction Decoder

Block:
10956090 at Sep-29-2020 07:34:22 AM +UTC
Transaction Fee:
0.005014827 ETH $12.82
Gas Used:
44,379 Gas / 113 Gwei

Emitted Events:

127 Vybe.Approval( owner=[Sender] 0x9374176ba0e0e56d1f244b2f4ba32a794bf06e0e, spender=0x7a250d56...659F2488D, value=115792089237316195423570985008687907853269984665640564039457584007913129639935 )

Account State Difference:

  Address   Before After State Difference Code
0x3A1c1d1c...B37c97CE9
0x9374176B...94BF06e0e
0.172359307682697063 Eth
Nonce: 33
0.167344480682697063 Eth
Nonce: 34
0.005014827
(Ethermine)
622.883166436886017103 Eth622.888181263886017103 Eth0.005014827

Execution Trace

Vybe.approve( spender=0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, amount=115792089237316195423570985008687907853269984665640564039457584007913129639935 ) => ( True )
{"IOwnershipTransferrable.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.7.0;\n\ninterface IOwnershipTransferrable {\n  function transferOwnership(address owner) external;\n  event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n}\n"},"Ownable.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.7.0;\n\nimport \"./IOwnershipTransferrable.sol\";\n\nabstract contract Ownable is IOwnershipTransferrable {\n  address private _owner;\n\n  constructor(address owner) {\n    _owner = owner;\n    emit OwnershipTransferred(address(0), _owner);\n  }\n\n  function owner() public view returns (address) {\n    return _owner;\n  }\n\n  modifier onlyOwner() {\n    require(_owner == msg.sender, \"Ownable: caller is not the owner\");\n    _;\n  }\n\n  function transferOwnership(address newOwner) override external onlyOwner {\n    require(newOwner != address(0), \"Ownable: new owner is the zero address\");\n    emit OwnershipTransferred(_owner, newOwner);\n    _owner = newOwner;\n  }\n}\n"},"SafeMath.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.7.0;\n\nlibrary SafeMath {\n  function add(uint256 a, uint256 b) internal pure returns (uint256) {\n    uint256 c = a + b;\n    require(c \u003e= a);\n    return c;\n  }\n\n  function sub(uint256 a, uint256 b) internal pure returns (uint256) {\n    require(b \u003c= a);\n    uint256 c = a - b;\n    return c;\n  }\n\n  function mul(uint256 a, uint256 b) internal pure returns (uint256) {\n    if (a == 0) {\n      return 0;\n    }\n    uint256 c = a * b;\n    require(c / a == b);\n    return c;\n  }\n\n  function div(uint256 a, uint256 b) internal pure returns (uint256) {\n    require(b \u003e 0);\n    uint256 c = a / b;\n    return c;\n  }\n\n  function mod(uint256 a, uint256 b) internal pure returns (uint256) {\n    require(b != 0);\n    return a % b;\n  }\n}\n"},"Vybe.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.7.0;\n\nimport \"./SafeMath.sol\";\nimport \"./Ownable.sol\";\n\ncontract Vybe is Ownable {\n  using SafeMath for uint256;\n\n  uint256 constant UINT256_MAX = ~uint256(0);\n\n  string private _name;\n  string private _symbol;\n  uint8 private _decimals;\n\n  uint256 private _totalSupply;\n  mapping(address =\u003e uint256) private _balances;\n  mapping(address =\u003e mapping(address =\u003e uint256)) private _allowances;\n\n  event Transfer(address indexed from, address indexed to, uint256 value);\n  event Approval(address indexed owner, address indexed spender, uint256 value);\n\n  constructor() Ownable(msg.sender) {\n    _name = \"Vybe\";\n    _symbol = \"VYBE\";\n    _decimals = 18;\n\n    _totalSupply = 2000000 * 1e18;\n    _balances[msg.sender] = _totalSupply;\n    emit Transfer(address(0), msg.sender, _totalSupply);\n  }\n\n  function name() external view returns (string memory) {\n    return _name;\n  }\n\n  function symbol() external view returns (string memory) {\n    return _symbol;\n  }\n\n  function decimals() external view returns (uint8) {\n    return _decimals;\n  }\n\n  function totalSupply() external view returns (uint256) {\n    return _totalSupply;\n  }\n\n  function balanceOf(address account) external view returns (uint256) {\n    return _balances[account];\n  }\n\n  function allowance(address owner, address spender) external view returns (uint256) {\n    return _allowances[owner][spender];\n  }\n\n  function transfer(address recipient, uint256 amount) external returns (bool) {\n    _transfer(msg.sender, recipient, amount);\n    return true;\n  }\n\n  function approve(address spender, uint256 amount) external returns (bool) {\n    _approve(msg.sender, spender, amount);\n    return true;\n  }\n\n  function transferFrom(address sender, address recipient, uint256 amount) external returns (bool) {\n    _transfer(sender, recipient, amount);\n    if (_allowances[msg.sender][sender] != UINT256_MAX) {\n      _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));\n    }\n    return true;\n  }\n\n  function increaseAllowance(address spender, uint256 addedValue) external returns (bool) {\n    _approve(msg.sender, spender, _allowances[msg.sender][spender].add(addedValue));\n    return true;\n  }\n\n  function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) {\n    _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));\n    return true;\n  }\n\n  function _transfer(address sender, address recipient, uint256 amount) internal {\n    require(sender != address(0));\n    require(recipient != address(0));\n\n    _balances[sender] = _balances[sender].sub(amount);\n    _balances[recipient] = _balances[recipient].add(amount);\n    emit Transfer(sender, recipient, amount);\n  }\n\n  function _approve(address owner, address spender, uint256 amount) internal {\n    require(owner != address(0));\n    require(spender != address(0));\n\n    _allowances[owner][spender] = amount;\n    emit Approval(owner, spender, amount);\n  }\n\n  function mint(address account, uint256 amount) external onlyOwner {\n    _totalSupply = _totalSupply.add(amount);\n    _balances[account] = _balances[account].add(amount);\n    emit Transfer(address(0), account, amount);\n  }\n\n  function burn(uint256 amount) external returns (bool) {\n    _balances[msg.sender] = _balances[msg.sender].sub(amount);\n    _totalSupply = _totalSupply.sub(amount);\n    emit Transfer(msg.sender, address(0), amount);\n    return true;\n  }\n}\n"}}