/**
 * This exercise focuses on removing elements from a list based on membership criteria.
 */
fun removeElementsFromList(list1: MutableList<Any>, list2: List<Any>): MutableList<Any> {

    // Remove all elements from list1 that are also in list2
    list1.removeAll { it in list2 }

    // Remove all elements from list1 that start with a vowel
    val vowels = listOf('a', 'e', 'i', 'o', 'u')
    list1.removeAll { it is String && it.isNotEmpty() && it[0].toLowerCase() in vowels }

    // Remove all elements from list1 that are integers
    list1.removeAll { it is Int }

    return list1
}
/**
 * This exercise focuses on removing elements from a list based on membership criteria.
 */
fun removeElementsFromList(list1: MutableList<Any>, list2: List<Any>): MutableList<Any> {
/**
 * This exercise focuses on removing elements from a list based on membership criteria.
 */
fun removeElementsFromList(list1: MutableList<Any>, list2: List<Any>): MutableList<Any> {

    // Remove all elements from list1 that are also in list2
    list1.removeAll { it in list2 }

    // Remove all elements from list1 that start with a vowel
    val vowels = listOf('a', 'e', 'i', 'o', 'u')
    list1.removeAll { it is String && it.isNotEmpty() && it[0].toLowerCase() in vowels }

    // Remove all elements from list1 that are integers
    list1.removeAll { it is Int }

    return list1
}