ETH Price: $2,766.03 (+8.75%)
Gas: 9.5 Gwei

Transaction Decoder

Block:
11112431 at Oct-23-2020 12:09:21 PM +UTC
Transaction Fee:
0.00523656 ETH $14.48
Gas Used:
174,552 Gas / 30 Gwei

Emitted Events:

179 CErc20.AccrueInterest( interestAccumulated=0, borrowIndex=1133069850833695051, totalBorrows=164262392931334 )
180 Unitroller.0x2caecd17d02f56fa897705dcc740da2d237c373f70686f4e0d9bd3bf0400ea7a( 0x2caecd17d02f56fa897705dcc740da2d237c373f70686f4e0d9bd3bf0400ea7a, 0x00000000000000000000000039aa39c021dfbae8fac545936693ac917d5e7563, 0x00000000000000000000000067a0784f260d905c3a3ed3ec9cf261ac5e649c84, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000002d0d5db97bf4ceeb416c6700d0391b4393 )
181 FiatTokenProxy.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00000000000000000000000067a0784f260d905c3a3ed3ec9cf261ac5e649c84, 0x00000000000000000000000039aa39c021dfbae8fac545936693ac917d5e7563, 00000000000000000000000000000000000000000000000000000000002dc6c0 )
182 CErc20.Mint( minter=[Sender] 0x67a0784f260d905c3a3ed3ec9cf261ac5e649c84, mintAmount=3000000, mintTokens=14147556792 )
183 CErc20.Transfer( from=[Receiver] CErc20, to=[Sender] 0x67a0784f260d905c3a3ed3ec9cf261ac5e649c84, amount=14147556792 )

Account State Difference:

  Address   Before After State Difference Code
0x39AA39c0...17d5E7563
0x3d981921...9B9c9Cd3B
(Compound: Comptroller)
(Spark Pool)
128.31147214474857158 Eth128.31670870474857158 Eth0.00523656
0x67A0784F...c5E649c84
0.01710567 Eth
Nonce: 1
0.01186911 Eth
Nonce: 2
0.00523656
0xA0b86991...E3606eB48

Execution Trace

CErc20.mint( mintAmount=3000000 ) => ( 0 )
  • FiatTokenProxy.70a08231( )
    • FiatTokenV2.balanceOf( account=0x39AA39c021dfbaE8faC545936693aC917d5E7563 ) => ( 68099159314109 )
    • LegacyJumpRateModelV2.getBorrowRate( cash=68099159314109, borrows=164262392931334, reserves=186004048603 ) => ( 0, 16825823232 )
    • Unitroller.4ef4c3e1( )
      • Comptroller.mintAllowed( cToken=0x39AA39c021dfbaE8faC545936693aC917d5E7563, minter=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84, mintAmount=3000000 ) => ( 0 )
        • CErc20.balanceOf( owner=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84 ) => ( 0 )
        • FiatTokenProxy.dd62ed3e( )
          • FiatTokenV2.allowance( owner=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84, spender=0x39AA39c021dfbaE8faC545936693aC917d5E7563 ) => ( 115792089237316195423570985008687907853269984665640564039457584007913129639935 )
          • FiatTokenProxy.70a08231( )
            • FiatTokenV2.balanceOf( account=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84 ) => ( 3000000 )
            • FiatTokenProxy.70a08231( )
              • FiatTokenV2.balanceOf( account=0x39AA39c021dfbaE8faC545936693aC917d5E7563 ) => ( 68099159314109 )
              • FiatTokenProxy.23b872dd( )
                • FiatTokenV2.transferFrom( from=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84, to=0x39AA39c021dfbaE8faC545936693aC917d5E7563, value=3000000 ) => ( True )
                • Unitroller.41c728b9( )
                  • Comptroller.mintVerify( cToken=0x39AA39c021dfbaE8faC545936693aC917d5E7563, minter=0x67A0784F260D905C3A3Ed3Ec9CF261ac5E649c84, actualMintAmount=3000000, mintTokens=14147556792 )
                    File 1 of 6: CErc20
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    // File: contracts/ComptrollerInterface.sol
                    pragma solidity ^0.5.8;
                    interface ComptrollerInterface {
                    /**
                    * @notice Marker function used for light validation when updating the comptroller of a market
                    * @dev Implementations should simply return true.
                    * @return true
                    */
                    function isComptroller() external view returns (bool);
                    /*** Assets You Are In ***/
                    function enterMarkets(address[] calldata cTokens) external returns (uint[] memory);
                    function exitMarket(address cToken) external returns (uint);
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                    File 2 of 6: Unitroller
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    // File: contracts/ErrorReporter.sol
                    pragma solidity ^0.5.8;
                    contract ComptrollerErrorReporter {
                    enum Error {
                    NO_ERROR,
                    UNAUTHORIZED,
                    COMPTROLLER_MISMATCH,
                    INSUFFICIENT_SHORTFALL,
                    INSUFFICIENT_LIQUIDITY,
                    INVALID_CLOSE_FACTOR,
                    INVALID_COLLATERAL_FACTOR,
                    INVALID_LIQUIDATION_INCENTIVE,
                    MARKET_NOT_ENTERED,
                    MARKET_NOT_LISTED,
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                    File 3 of 6: FiatTokenProxy
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    pragma solidity ^0.4.24;
                    // File: zos-lib/contracts/upgradeability/Proxy.sol
                    /**
                    * @title Proxy
                    * @dev Implements delegation of calls to other contracts, with proper
                    * forwarding of return values and bubbling of failures.
                    * It defines a fallback function that delegates all calls to the address
                    * returned by the abstract _implementation() internal function.
                    */
                    contract Proxy {
                    /**
                    * @dev Fallback function.
                    * Implemented entirely in `_fallback`.
                    */
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                    File 4 of 6: FiatTokenV2
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    // File: @openzeppelin/contracts/math/SafeMath.sol
                    // License: MIT
                    pragma solidity ^0.6.0;
                    /**
                    * @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.
                    *
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                    File 5 of 6: LegacyJumpRateModelV2
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    pragma solidity ^0.5.16;
                    import "./SafeMath.sol";
                    /**
                    * @title Logic for Compound's JumpRateModel Contract V2.
                    * @author Compound (modified by Dharma Labs, refactored by Arr00)
                    * @notice Version 2 modifies Version 1 by enabling updateable parameters.
                    */
                    contract BaseJumpRateModelV2 {
                    using SafeMath for uint;
                    event NewInterestParams(uint baseRatePerBlock, uint multiplierPerBlock, uint jumpMultiplierPerBlock, uint kink);
                    /**
                    * @notice The address of the owner, i.e. the Timelock contract, which can update parameters directly
                    */
                    address public owner;
                    /**
                    * @notice The approximate number of blocks per year that is assumed by the interest rate model
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

                    File 6 of 6: Comptroller
                    1
                    2
                    3
                    4
                    5
                    6
                    7
                    8
                    9
                    10
                    11
                    12
                    13
                    14
                    15
                    16
                    pragma solidity ^0.5.16;
                    import "./ComptrollerInterface.sol";
                    import "./CTokenInterfaces.sol";
                    import "./ErrorReporter.sol";
                    import "./Exponential.sol";
                    import "./EIP20Interface.sol";
                    import "./EIP20NonStandardInterface.sol";
                    import "./InterestRateModel.sol";
                    /**
                    * @title Compound's CToken Contract
                    * @notice Abstract base for CTokens
                    * @author Compound
                    */
                    contract CToken is CTokenInterface, Exponential, TokenErrorReporter {
                    /**
                    * @notice Initialize the money market
                    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX