// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import { FxBaseChildTunnel } from '../../tunnel/FxBaseChildTunnel.sol'; /** * @title FxStateChildTunnel */ contract FxStateChildTunnel is FxBaseChildTunnel { uint256 public latestStateId; address public latestRootMessageSender; bytes public latestData; constructor(address _fxChild) FxBaseChildTunnel(_fxChild) { } function _processMessageFromRoot(uint256 stateId, address sender, bytes memory data) internal override validateSender(sender) { latestStateId = stateId; latestRootMessageSender = sender; latestData = data; } function sendMessageToRoot(bytes memory message) public { _sendMessageToRoot(message); } }