// SPDX-License-Identifier: MIT pragma solidity 0.8.17; library TypeCasts { // alignment preserving cast function addressToBytes32(address addr) internal pure returns (bytes32) { return bytes32(uint256(uint160(addr))); } // alignment preserving cast function bytes32ToAddress(bytes32 buf) internal pure returns (address) { return address(uint160(uint256(buf))); } }