// SPDX-License-Identifier: UNLICENSED pragma solidity =0.8.18; import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol"; library SafeERC20Balance { using SafeERC20 for IERC20; function safeTransferFrom(IERC20 token, address sender, address receiver, uint256 amount) internal returns (uint256) { uint256 prevBalance = token.balanceOf(receiver); token.safeTransferFrom(sender, receiver, amount); return token.balanceOf(receiver) - prevBalance; } }