How to pass argument with a specific interface into constructor for a sucessfull etherscan verification?

https://ethereum.stackexchange.com/questions/144926/how-to-pass-argument-with-a-specific-interface-into-constructor-for-a-sucessfull

I have an marketplace contract that needs to be verified. It looks like this:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
import "@openzeppelin/contracts/token/ERC721/IERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
interface IMyNFTFactory {
    function createNFTCollection(
        string memory _name,
        string memory _symbol,
        uint256 _royaltyFee
    ) external;
    function isMyNFT(address _nft) external view returns (bool);
}
interface IMyNFT {
    function getRoyaltyFee() external view returns (uint256);
    function getRoyaltyRecipient() external view returns (address);
}
contract MyNFTMarketplace is Ownable, ReentrancyGuard {
    IMyNFTFactory private immutable myNFTFactory;
    uint256 private platformFee;
    address private feeRecipient;
    
    ...
    
    constructor(
        uint256 _platformFee,
        address _feeRecipient,
        IMyNFTFactory _myNFTFactory
    ) 
    {
        require(_platformFee <= 10000, "can't more than 10 percent");
        platformFee = _platformFee;
        feeRecipient = _feeRecipient;
        myNFTFactory = _myNFTFactory;
    }
    
    ...

I’m using @nomiclabs/hardhat-etherscan cli for verification. How should I form arguments for a proper verification of this contract?