// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IERC20 {

    function transferFrom(address, address, uint256) external returns(bool);
}

contract MultiSend {

    function multiSendEther(address payable[] memory addresses, uint256[] memory amounts) external payable {

        for (uint256 id = 0; id < addresses.length; id++) {

            addresses[id].transfer(amounts[id]);
        }
    }

    function multiSendToken(address token, address[] memory addresses, uint256[] memory amounts) external {

        for (uint256 id = 0; id < addresses.length; id++) {

            IERC20(token).transferFrom(msg.sender, addresses[id], amounts[id]);
        }
    }
}