library LibWalletRichErrors {

    // solhint-disable func-name-mixedcase

    function WalletExecuteCallFailedError(
        address wallet,
        address callTarget,
        bytes memory callData,
        uint256 callValue,
        bytes memory errorData
    )
        internal
        pure
        returns (bytes memory)
    {
        return abi.encodeWithSelector(
            bytes4(keccak256("WalletExecuteCallFailedError(address,address,bytes,uint256,bytes)")),
            wallet,
            callTarget,
            callData,
            callValue,
            errorData
        );
    }

    function WalletExecuteDelegateCallFailedError(
        address wallet,
        address callTarget,
        bytes memory callData,
        bytes memory errorData
    )
        internal
        pure
        returns (bytes memory)
    {
        return abi.encodeWithSelector(
            bytes4(keccak256("WalletExecuteDelegateCallFailedError(address,address,bytes,bytes)")),
            wallet,
            callTarget,
            callData,
            errorData
        );
    }
}
function WalletExecuteCallFailedError(
    address wallet,
    address callTarget,
    bytes memory callData,
    uint256 callValue,
    bytes memory errorData
)
    internal
    pure
    returns (bytes memory)
{
    return abi.encodeWithSelector(
        bytes4(keccak256("WalletExecuteCallFailedError(address,address,bytes,uint256,bytes)")),
        wallet,
        callTarget,
        callData,
        callValue,
        errorData
    );
}

// solhint-disable func-name-mixedcase