/**
 * Given two sets, returns the intersection of those sets.
 *
 * @param setA A set containing elements of type Int or String.
 * @param setB A set containing elements of type Int or String.
 * @return A new set containing the common elements between setA and setB.
 */
fun intersectionOfSets(setA: Set<Any>, setB: Set<Any>): Set<Any> {

    val result = mutableSetOf<Any>()

    // Iterate through each element in setA
    for (elem in setA) {
        // Check if the element is also in setB
        if (elem in setB) {
            // Add the element to the result set
            result.add(elem)
        }
    }

    return result
}
/**
 * Given two sets, returns the intersection of those sets.
 *
 * @param setA A set containing elements of type Int or String.
 * @param setB A set containing elements of type Int or String.
 * @return A new set containing the common elements between setA and setB.
 */
fun intersectionOfSets(setA: Set<Any>, setB: Set<Any>): Set<Any> {
/**
 * Given two sets, returns the intersection of those sets.
 *
 * @param setA A set containing elements of type Int or String.
 * @param setB A set containing elements of type Int or String.
 * @return A new set containing the common elements between setA and setB.
 */
fun intersectionOfSets(setA: Set<Any>, setB: Set<Any>): Set<Any> {

    val result = mutableSetOf<Any>()

    // Iterate through each element in setA
    for (elem in setA) {
        // Check if the element is also in setB
        if (elem in setB) {
            // Add the element to the result set
            result.add(elem)
        }
    }

    return result
}