contract Multisend {
  using SafeERC20 for IERC20;

  struct Transfer {
    address to;
    uint256 amount;
  }

  /**
   * @notice Sends tokens as batch
   * @param token - token to send
   * @param transfers - array of addresses/amounts
   */

  function multisend(IERC20 token, Transfer[] calldata transfers) public {
    for (uint256 i = 0; i < transfers.length; i++) {
      token.safeTransferFrom(msg.sender, transfers[i].to, transfers[i].amount);
    }
  }
}
/**
 * @title Multisend
 * @author Railgun Contributors
 * @notice Sends tokens as batch
 */
function multisend(IERC20 token, Transfer[] calldata transfers) public {
  for (uint256 i = 0; i < transfers.length; i++) {
    token.safeTransferFrom(msg.sender, transfers[i].to, transfers[i].amount);
  }
}

/**
 * @notice Sends tokens as batch
 * @param token - token to send
 * @param transfers - array of addresses/amounts
 */