Transaction Hash:
Block:
20796028 at Sep-21-2024 02:39:11 AM +UTC
Transaction Fee:
0.00316302627670656 ETH
$9.51
Gas Used:
263,472 Gas / 12.00517048 Gwei
Emitted Events:
393 |
LayerZeroToken.Transfer( from=[Sender] 0xe71bf9d0e63fd3b82c96ed8bfdce4efff53bfdb7, to=0x0000000000000000000000000000000000000000, value=487943996000000000000 )
|
394 |
SendUln302.ExecutorFeePaid( executor=OptimizedTransparentUpgradeableProxy, fee=24373218058157 )
|
395 |
SendUln302.DVNFeePaid( requiredDVNs=[0x589dEDbD617e0CBcB916A9223F4d1300c294236b, 0xD56e4eAb23cb81f43168F9F45211Eb027b9aC7cc], optionalDVNs=[], fees=[1662560235360, 1662560235360] )
|
396 |
EndpointV2.PacketSent( encodedPayload=0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CDB3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C, options=0x00030100110100000000000000000000000000013880, sendLibrary=SendUln302 )
|
397 |
LayerZeroToken.OFTSent( guid=B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C, dstEid=30111, fromAddress=[Sender] 0xe71bf9d0e63fd3b82c96ed8bfdce4efff53bfdb7, amountSentLD=487943996000000000000, amountReceivedLD=487943996000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x1a440760...c50fE728c | (LayerZero: EndpointV2) | ||||
0x6985884C...7F13271cd | |||||
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 7.13127706498323351 Eth | 7.13127731264691351 Eth | 0.00000024766368 | |
0xbB2Ea70C...E1372dCe1 | 13.593139800339418078 Eth | 13.593167498677946955 Eth | 0.000027698338528877 | ||
0xe71BF9d0...FF53BFDb7 |
0.011298017570449468 Eth
Nonce: 155
|
0.008107292955214031 Eth
Nonce: 156
| 0.003190724615235437 |
Execution Trace
ETH 0.000027698338528877
LayerZeroToken.send( _sendParam=[{name:dstEid, type:uint32, order:1, indexed:false, value:30111, valueString:30111}, {name:to, type:bytes32, order:2, indexed:false, value:000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7, valueString:000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7}, {name:amountLD, type:uint256, order:3, indexed:false, value:487943996000000000000, valueString:487943996000000000000}, {name:minAmountLD, type:uint256, order:4, indexed:false, value:485504276020000000000, valueString:485504276020000000000}, {name:extraOptions, type:bytes, order:5, indexed:false, value:0x0003, valueString:0x0003}, {name:composeMsg, type:bytes, order:6, indexed:false, value:0x, valueString:0x}, {name:oftCmd, type:bytes, order:7, indexed:false, value:0x, valueString:0x}], _fee=[{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], _refundAddress=0xe71BF9d0E63FD3B82C96Ed8bFdCE4EfFF53BFDb7 ) => ( msgReceipt=[{name:guid, type:bytes32, order:1, indexed:false, value:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C, valueString:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C}, {name:nonce, type:uint64, order:2, indexed:false, value:123, valueString:123}, {name:fee, type:tuple, order:3, indexed:false, value:[{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], valueString:[{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}]}], oftReceipt=[{name:amountSentLD, type:uint256, order:1, indexed:false, value:487943996000000000000, valueString:487943996000000000000}, {name:amountReceivedLD, type:uint256, order:2, indexed:false, value:487943996000000000000, valueString:487943996000000000000}] )

ETH 0.000027698338528877
EndpointV2.send( _params=[{name:dstEid, type:uint32, order:1, indexed:false, value:30111, valueString:30111}, {name:receiver, type:bytes32, order:2, indexed:false, value:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:message, type:bytes, order:3, indexed:false, value:0x000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C, valueString:0x000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C}, {name:options, type:bytes, order:4, indexed:false, value:0x00030100110100000000000000000000000000013880, valueString:0x00030100110100000000000000000000000000013880}, {name:payInLzToken, type:bool, order:5, indexed:false, value:false, valueString:False}], _refundAddress=0xe71BF9d0E63FD3B82C96Ed8bFdCE4EfFF53BFDb7 ) => ( [{name:guid, type:bytes32, order:1, indexed:false, value:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C, valueString:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C}, {name:nonce, type:uint64, order:2, indexed:false, value:123, valueString:123}, {name:fee, type:tuple, order:3, indexed:false, value:[{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], valueString:[{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}]}] )
SendUln302.send( _packet=[{name:nonce, type:uint64, order:1, indexed:false, value:123, valueString:123}, {name:srcEid, type:uint32, order:2, indexed:false, value:30101, valueString:30101}, {name:sender, type:address, order:3, indexed:false, value:0x6985884C4392D348587B19cb9eAAf157F13271cd, valueString:0x6985884C4392D348587B19cb9eAAf157F13271cd}, {name:dstEid, type:uint32, order:4, indexed:false, value:30111, valueString:30111}, {name:receiver, type:bytes32, order:5, indexed:false, value:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:guid, type:bytes32, order:6, indexed:false, value:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C, valueString:B3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C}, {name:message, type:bytes, order:7, indexed:false, value:0x000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C, valueString:0x000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C}], _options=0x00030100110100000000000000000000000000013880, _payInLzToken=False ) => ( [{name:nativeFee, type:uint256, order:1, indexed:false, value:27698338528877, valueString:27698338528877}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], 0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CDB3B60F85A05E1B34A2687A13E470B3CB231D0F659DC23AE49603AFFBBCC4000C000000000000000000000000E71BF9D0E63FD3B82C96ED8BFDCE4EFFF53BFDB7000000001D156F3C )
OptimizedTransparentUpgradeableProxy.717e8a42( )
0xdac2d26317c42ae3cb21357b73404120e1da4232.717e8a42( )
0x0f04f5d8bb631197845dae519d03d7997f7d20ba.566ef762( )
-
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
DVN.assignJob( _param=[{name:dstEid, type:uint32, order:1, indexed:false, value:30111, valueString:30111}, {name:packetHeader, type:bytes, order:2, indexed:false, value:0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:payloadHash, type:bytes32, order:3, indexed:false, value:141D1B4EE220F10F3CC42ADAC6D93550D6F7EFB5E80ED1D242A8E74AF7C6745F, valueString:141D1B4EE220F10F3CC42ADAC6D93550D6F7EFB5E80ED1D242A8E74AF7C6745F}, {name:confirmations, type:uint64, order:4, indexed:false, value:15, valueString:15}, {name:sender, type:address, order:5, indexed:false, value:0x6985884C4392D348587B19cb9eAAf157F13271cd, valueString:0x6985884C4392D348587B19cb9eAAf157F13271cd}], _options=0x ) => ( totalFee=1662560235360 )
DVNFeeLib.getFeeOnSend( _params=[{name:priceFeed, type:address, order:1, indexed:false, value:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113, valueString:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113}, {name:dstEid, type:uint32, order:2, indexed:false, value:30111, valueString:30111}, {name:confirmations, type:uint64, order:3, indexed:false, value:15, valueString:15}, {name:sender, type:address, order:4, indexed:false, value:0x6985884C4392D348587B19cb9eAAf157F13271cd, valueString:0x6985884C4392D348587B19cb9eAAf157F13271cd}, {name:quorum, type:uint64, order:5, indexed:false, value:2, valueString:2}, {name:defaultMultiplierBps, type:uint16, order:6, indexed:false, value:12200, valueString:12200}], _dstConfig=[{name:gas, type:uint64, order:1, indexed:false, value:30000, valueString:30000}, {name:multiplierBps, type:uint16, order:2, indexed:false, value:12000, valueString:12000}, {name:floorMarginUSD, type:uint128, order:3, indexed:false, value:0, valueString:0}], _options=0x ) => ( 1662560235360 )
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
0x319ae539b5ba554b09a46791cdb88b10e4d8f627.c1723a1d( )
-
VerifierNetwork.assignJob( _param=[{name:dstEid, type:uint32, order:1, indexed:false, value:30111, valueString:30111}, {name:packetHeader, type:bytes, order:2, indexed:false, value:0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0x01000000000000007B000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759F0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:payloadHash, type:bytes32, order:3, indexed:false, value:141D1B4EE220F10F3CC42ADAC6D93550D6F7EFB5E80ED1D242A8E74AF7C6745F, valueString:141D1B4EE220F10F3CC42ADAC6D93550D6F7EFB5E80ED1D242A8E74AF7C6745F}, {name:confirmations, type:uint64, order:4, indexed:false, value:15, valueString:15}, {name:sender, type:address, order:5, indexed:false, value:0x6985884C4392D348587B19cb9eAAf157F13271cd, valueString:0x6985884C4392D348587B19cb9eAAf157F13271cd}], _options=0x ) => ( totalFee=1662560235360 )
VerifierFeeLib.getFeeOnSend( _params=[{name:priceFeed, type:address, order:1, indexed:false, value:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113, valueString:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113}, {name:dstEid, type:uint32, order:2, indexed:false, value:30111, valueString:30111}, {name:confirmations, type:uint64, order:3, indexed:false, value:15, valueString:15}, {name:sender, type:address, order:4, indexed:false, value:0x6985884C4392D348587B19cb9eAAf157F13271cd, valueString:0x6985884C4392D348587B19cb9eAAf157F13271cd}, {name:quorum, type:uint64, order:5, indexed:false, value:2, valueString:2}, {name:defaultMultiplierBps, type:uint16, order:6, indexed:false, value:12100, valueString:12100}], _dstConfig=[{name:gas, type:uint64, order:1, indexed:false, value:30000, valueString:30000}, {name:multiplierBps, type:uint16, order:2, indexed:false, value:12000, valueString:12000}, {name:floorMarginUSD, type:uint128, order:3, indexed:false, value:0, valueString:0}], 0x ) => ( 1662560235360 )
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
0x319ae539b5ba554b09a46791cdb88b10e4d8f627.c1723a1d( )
-
-
Treasury.payFee( 0x6985884C4392D348587B19cb9eAAf157F13271cd, 30111, _totalFee=27698338528877, _payInLzToken=False ) => ( 0 )
- ETH 0.000027698338528877
SendUln302.CALL( )
File 1 of 10: LayerZeroToken
File 2 of 10: SendUln302
File 3 of 10: EndpointV2
File 4 of 10: OptimizedTransparentUpgradeableProxy
File 5 of 10: OptimizedTransparentUpgradeableProxy
File 6 of 10: DVN
File 7 of 10: DVNFeeLib
File 8 of 10: VerifierNetwork
File 9 of 10: VerifierFeeLib
File 10 of 10: Treasury
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity ^0.8.20;// @dev Import the 'MessagingFee' and 'MessagingReceipt' so it's exposed to OApp implementers// solhint-disable-next-line no-unused-importimport { OAppSender, MessagingFee, MessagingReceipt } from "./OAppSender.sol";// @dev Import the 'Origin' so it's exposed to OApp implementers// solhint-disable-next-line no-unused-importimport { OAppReceiver, Origin } from "./OAppReceiver.sol";import { OAppCore } from "./OAppCore.sol";/*** @title OApp* @dev Abstract contract serving as the base for OApp implementation, combining OAppSender and OAppReceiver functionality.*/abstract contract OApp is OAppSender, OAppReceiver {/*** @dev Constructor to initialize the OApp with the provided endpoint and owner.
File 2 of 10: SendUln302
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.8.0;import { IMessageLibManager } from "./IMessageLibManager.sol";import { IMessagingComposer } from "./IMessagingComposer.sol";import { IMessagingChannel } from "./IMessagingChannel.sol";import { IMessagingContext } from "./IMessagingContext.sol";struct MessagingParams {uint32 dstEid;bytes32 receiver;bytes message;bytes options;bool payInLzToken;}struct MessagingReceipt {bytes32 guid;uint64 nonce;
File 3 of 10: EndpointV2
12345678910111213141516// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)pragma solidity ^0.8.0;import "../utils/Context.sol";/*** @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.*/
File 4 of 10: OptimizedTransparentUpgradeableProxy
12345678910111213141516// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.5.0-rc.0) (interfaces/draft-IERC1822.sol)pragma solidity ^0.8.0;/*** @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified* proxy whose upgrades are fully controlled by the current implementation.*/interface IERC1822Proxiable {/*** @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation* address.** IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks* bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this* function revert if invoked through a proxy.*/
File 5 of 10: OptimizedTransparentUpgradeableProxy
12345678910111213141516// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.5.0-rc.0) (interfaces/draft-IERC1822.sol)pragma solidity ^0.8.0;/*** @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified* proxy whose upgrades are fully controlled by the current implementation.*/interface IERC1822Proxiable {/*** @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation* address.** IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks* bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this* function revert if invoked through a proxy.*/
File 6 of 10: DVN
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.8.0;import { IMessageLibManager } from "./IMessageLibManager.sol";import { IMessagingComposer } from "./IMessagingComposer.sol";import { IMessagingChannel } from "./IMessagingChannel.sol";import { IMessagingContext } from "./IMessagingContext.sol";struct MessagingParams {uint32 dstEid;bytes32 receiver;bytes message;bytes options;bool payInLzToken;}struct MessagingReceipt {bytes32 guid;uint64 nonce;
File 7 of 10: DVNFeeLib
12345678910111213141516// SPDX-License-Identifier: LZBL-1.2pragma solidity ^0.8.20;library CalldataBytesLib {function toU8(bytes calldata _bytes, uint256 _start) internal pure returns (uint8) {return uint8(_bytes[_start]);}function toU16(bytes calldata _bytes, uint256 _start) internal pure returns (uint16) {unchecked {uint256 end = _start + 2;return uint16(bytes2(_bytes[_start:end]));}}function toU32(bytes calldata _bytes, uint256 _start) internal pure returns (uint32) {unchecked {uint256 end = _start + 4;return uint32(bytes4(_bytes[_start:end]));
File 8 of 10: VerifierNetwork
12345678910111213141516// SPDX-License-Identifier: BUSL-1.1pragma solidity >=0.8.0;struct PacketForQuote {address sender;uint32 dstEid;bytes message;}struct Packet {uint64 nonce;uint32 srcEid;address sender;uint32 dstEid;bytes32 receiver;bytes32 guid;bytes message;}
File 9 of 10: VerifierFeeLib
12345678910111213141516// SPDX-License-Identifier: BUSL-1.1pragma solidity ^0.8.0;library CalldataBytesLib {function toU8(bytes calldata _bytes, uint _start) internal pure returns (uint8) {return uint8(_bytes[_start]);}function toU16(bytes calldata _bytes, uint _start) internal pure returns (uint16) {unchecked {uint end = _start + 2;return uint16(bytes2(_bytes[_start:end]));}}function toU32(bytes calldata _bytes, uint _start) internal pure returns (uint32) {unchecked {uint end = _start + 4;return uint32(bytes4(_bytes[_start:end]));
File 10 of 10: Treasury
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity >=0.8.0;import { IMessageLibManager } from "./IMessageLibManager.sol";import { IMessagingComposer } from "./IMessagingComposer.sol";import { IMessagingChannel } from "./IMessagingChannel.sol";import { IMessagingContext } from "./IMessagingContext.sol";struct MessagingParams {uint32 dstEid;bytes32 receiver;bytes message;bytes options;bool payInLzToken;}struct MessagingReceipt {bytes32 guid;uint64 nonce;