Transaction Hash:
Block:
20795943 at Sep-21-2024 02:22:11 AM +UTC
Transaction Fee:
0.002679043506360018 ETH
$10.42
Gas Used:
264,138 Gas / 10.142590261 Gwei
Emitted Events:
348 |
LayerZeroToken.Transfer( from=[Sender] 0xaca4f5a7f795637663959737aeae25846cdec96b, to=0x0000000000000000000000000000000000000000, value=360046652000000000000 )
|
349 |
SendUln302.ExecutorFeePaid( executor=OptimizedTransparentUpgradeableProxy, fee=23773934426157 )
|
350 |
SendUln302.DVNFeePaid( requiredDVNs=[0x589dEDbD617e0CBcB916A9223F4d1300c294236b, 0xD56e4eAb23cb81f43168F9F45211Eb027b9aC7cc], optionalDVNs=[], fees=[3631152000000, 3631152000000] )
|
351 |
EndpointV2.PacketSent( encodedPayload=0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CDF9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C, options=0x000301001101000000000000000000000000000493E0, sendLibrary=SendUln302 )
|
352 |
LayerZeroToken.OFTSent( guid=F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7, dstEid=30110, fromAddress=[Sender] 0xaca4f5a7f795637663959737aeae25846cdec96b, amountSentLD=360046652000000000000, amountReceivedLD=360046652000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x1a440760...c50fE728c | (LayerZero: EndpointV2) | ||||
0x4838B106...B0BAD5f97
Miner
| (Titan Builder) | 8.073613250661733646 Eth | 8.073869464521733646 Eth | 0.00025621386 | |
0x6985884C...7F13271cd | |||||
0xaca4F5a7...46cDec96b |
0.029029745073551433 Eth
Nonce: 286
|
0.026319665328765258 Eth
Nonce: 287
| 0.002710079744786175 | ||
0xbB2Ea70C...E1372dCe1 | 13.499395363257877501 Eth | 13.499426399496303658 Eth | 0.000031036238426157 |
Execution Trace
ETH 0.000031036238426157
LayerZeroToken.send( _sendParam=[{name:dstEid, type:uint32, order:1, indexed:false, value:30110, valueString:30110}, {name:to, type:bytes32, order:2, indexed:false, value:000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B, valueString:000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B}, {name:amountLD, type:uint256, order:3, indexed:false, value:360046652000000000000, valueString:360046652000000000000}, {name:minAmountLD, type:uint256, order:4, indexed:false, value:358246418740000000000, valueString:358246418740000000000}, {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:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], _refundAddress=0xaca4F5a7f795637663959737aeAE25846cDec96b ) => ( msgReceipt=[{name:guid, type:bytes32, order:1, indexed:false, value:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7, valueString:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7}, {name:nonce, type:uint64, order:2, indexed:false, value:413, valueString:413}, {name:fee, type:tuple, order:3, indexed:false, value:[{name:nativeFee, type:uint256, order:1, indexed:false, value:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], valueString:[{name:nativeFee, type:uint256, order:1, indexed:false, value:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}]}], oftReceipt=[{name:amountSentLD, type:uint256, order:1, indexed:false, value:360046652000000000000, valueString:360046652000000000000}, {name:amountReceivedLD, type:uint256, order:2, indexed:false, value:360046652000000000000, valueString:360046652000000000000}] )

ETH 0.000031036238426157
EndpointV2.send( _params=[{name:dstEid, type:uint32, order:1, indexed:false, value:30110, valueString:30110}, {name:receiver, type:bytes32, order:2, indexed:false, value:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:message, type:bytes, order:3, indexed:false, value:0x000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C, valueString:0x000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C}, {name:options, type:bytes, order:4, indexed:false, value:0x000301001101000000000000000000000000000493E0, valueString:0x000301001101000000000000000000000000000493E0}, {name:payInLzToken, type:bool, order:5, indexed:false, value:false, valueString:False}], _refundAddress=0xaca4F5a7f795637663959737aeAE25846cDec96b ) => ( [{name:guid, type:bytes32, order:1, indexed:false, value:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7, valueString:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7}, {name:nonce, type:uint64, order:2, indexed:false, value:413, valueString:413}, {name:fee, type:tuple, order:3, indexed:false, value:[{name:nativeFee, type:uint256, order:1, indexed:false, value:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], valueString:[{name:nativeFee, type:uint256, order:1, indexed:false, value:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}]}] )
SendUln302.send( _packet=[{name:nonce, type:uint64, order:1, indexed:false, value:413, valueString:413}, {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:30110, valueString:30110}, {name:receiver, type:bytes32, order:5, indexed:false, value:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:guid, type:bytes32, order:6, indexed:false, value:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7, valueString:F9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7}, {name:message, type:bytes, order:7, indexed:false, value:0x000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C, valueString:0x000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C}], _options=0x000301001101000000000000000000000000000493E0, _payInLzToken=False ) => ( [{name:nativeFee, type:uint256, order:1, indexed:false, value:31036238426157, valueString:31036238426157}, {name:lzTokenFee, type:uint256, order:2, indexed:false, value:0, valueString:0}], 0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CDF9B1CFB6EF44B33E1176139099E62DFD92FA2BBCD7BA20D30E76AE91A69169F7000000000000000000000000ACA4F5A7F795637663959737AEAE25846CDEC96B000000001575E03C )
OptimizedTransparentUpgradeableProxy.717e8a42( )
0xdac2d26317c42ae3cb21357b73404120e1da4232.717e8a42( )
0x0f04f5d8bb631197845dae519d03d7997f7d20ba.566ef762( )
-
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
DVN.assignJob( _param=[{name:dstEid, type:uint32, order:1, indexed:false, value:30110, valueString:30110}, {name:packetHeader, type:bytes, order:2, indexed:false, value:0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:payloadHash, type:bytes32, order:3, indexed:false, value:D2AACB0A1FD57D58F8D30768131F676FFBADED62487151459C9C1AF9E117C64D, valueString:D2AACB0A1FD57D58F8D30768131F676FFBADED62487151459C9C1AF9E117C64D}, {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=3631152000000 )
DVNFeeLib.getFeeOnSend( _params=[{name:priceFeed, type:address, order:1, indexed:false, value:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113, valueString:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113}, {name:dstEid, type:uint32, order:2, indexed:false, value:30110, valueString:30110}, {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:180000, valueString:180000}, {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 ) => ( 3631152000000 )
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
0x319ae539b5ba554b09a46791cdb88b10e4d8f627.c1723a1d( )
-
VerifierNetwork.assignJob( _param=[{name:dstEid, type:uint32, order:1, indexed:false, value:30110, valueString:30110}, {name:packetHeader, type:bytes, order:2, indexed:false, value:0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD, valueString:0x01000000000000019D000075950000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD0000759E0000000000000000000000006985884C4392D348587B19CB9EAAF157F13271CD}, {name:payloadHash, type:bytes32, order:3, indexed:false, value:D2AACB0A1FD57D58F8D30768131F676FFBADED62487151459C9C1AF9E117C64D, valueString:D2AACB0A1FD57D58F8D30768131F676FFBADED62487151459C9C1AF9E117C64D}, {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=3631152000000 )
VerifierFeeLib.getFeeOnSend( _params=[{name:priceFeed, type:address, order:1, indexed:false, value:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113, valueString:0xC03f31fD86a9077785b7bCf6598Ce3598Fa91113}, {name:dstEid, type:uint32, order:2, indexed:false, value:30110, valueString:30110}, {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:180000, valueString:180000}, {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 ) => ( 3631152000000 )
OptimizedTransparentUpgradeableProxy.c1723a1d( )
-
0x319ae539b5ba554b09a46791cdb88b10e4d8f627.c1723a1d( )
-
-
Treasury.payFee( 0x6985884C4392D348587B19cb9eAAf157F13271cd, 30110, _totalFee=31036238426157, _payInLzToken=False ) => ( 0 )
- ETH 0.000031036238426157
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;