pragma ever-solidity >= 0.68.0; import "./IUpgradableByRequestBase.tsol"; /// @title Upgradable by Request with Data Interface /// @notice Interface for contract upgrade by request implementation interface IUpgradableByRequestWithData is IUpgradableByRequestBase { /// @notice Upgrades contract's code /// @dev Only the upgrader can perform. See Upgrader /// @param _version New version of the contract /// @param _code Contract's new code /// @param _extra Extra user-defined data to use in upgrade /// @param _remainingGasTo Gas recipient function upgrade( uint32 _version, TvmCell _code, TvmCell _extra, address _remainingGasTo ) external; }