/**
 * This function creates a range of numbers between the given start and stop parameters.
 *
 * @param start The starting value of the range (inclusive).
 * @param stop The ending value of the range (exclusive).
 * @return A list of numbers from start to stop-1 (inclusive).
 * @throws IllegalArgumentException If start is greater than or equal to stop.
 */
fun createRange(start: Int, stop: Int): List<Int> {

    if (start >= stop) {
        throw IllegalArgumentException("Start value must be less than stop value.")
    }

    return (start until stop).toList()
}

// Exercise: Intersection of
/**
 * This function creates a range of numbers between the given start and stop parameters.
 *
 * @param start The starting value of the range (inclusive).
 * @param stop The ending value of the range (exclusive).
 * @return A list of numbers from start to stop-1 (inclusive).
 * @throws IllegalArgumentException If start is greater than or equal to stop.
 */
fun createRange(start: Int, stop: Int): List<Int> {
/**
 * This function creates a range of numbers between the given start and stop parameters.
 *
 * @param start The starting value of the range (inclusive).
 * @param stop The ending value of the range (exclusive).
 * @return A list of numbers from start to stop-1 (inclusive).
 * @throws IllegalArgumentException If start is greater than or equal to stop.
 */
fun createRange(start: Int, stop: Int): List<Int> {

    if (start >= stop) {
        throw IllegalArgumentException("Start value must be less than stop value.")
    }

    return (start until stop).toList()
}

// Exercise: Intersection of