/**
 * This function takes a list of numbers and returns all unique pairs of numbers.
 *
 * @param numbers A list of integers.
 * @return A list containing all unique pairs of numbers.
 */
fun getUniquePairs(numbers: List<Int>): List<Pair<Int, Int>> {

    val uniquePairs = mutableListOf<Pair<Int, Int>>()

    // Nested for loop to iterate through all possible pairs of numbers
    for (i in numbers.indices) {
        for (j in i + 1 until numbers.size) {
            // Check if the pair is unique and add it to the list
            if (!uniquePairs.contains(Pair(numbers[i], numbers[j])) && !uniquePairs.contains(Pair(numbers[j], numbers[i]))) {
                uniquePairs.add(Pair(numbers[i], numbers[j]))
            }
        }
    }

    return uniquePairs
}
/**
 * This function takes a list of numbers and returns all unique pairs of numbers.
 *
 * @param numbers A list of integers.
 * @return A list containing all unique pairs of numbers.
 */
fun getUniquePairs(numbers: List<Int>): List<Pair<Int, Int>> {
/**
 * This function takes a list of numbers and returns all unique pairs of numbers.
 *
 * @param numbers A list of integers.
 * @return A list containing all unique pairs of numbers.
 */
fun getUniquePairs(numbers: List<Int>): List<Pair<Int, Int>> {

    val uniquePairs = mutableListOf<Pair<Int, Int>>()

    // Nested for loop to iterate through all possible pairs of numbers
    for (i in numbers.indices) {
        for (j in i + 1 until numbers.size) {
            // Check if the pair is unique and add it to the list
            if (!uniquePairs.contains(Pair(numbers[i], numbers[j])) && !uniquePairs.contains(Pair(numbers[j], numbers[i]))) {
                uniquePairs.add(Pair(numbers[i], numbers[j]))
            }
        }
    }

    return uniquePairs
}