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

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;
        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?