/**
 * Given a tuple t, slice it from index 'start' to index 'end' (excluding 'end') and return the sliced tuple.
 *
 * @param t The input tuple.
 * @param start The index to start the slice from.
 * @param end The index to end the slice (exclusive).
 * @return The sliced tuple.
 *
 * Example:
 * Given the tuple t = (1, 2, 3, 4, 5), and start = 1, end = 4, the output should be (2, 3, 4).
 */
fun sliceTuple(t: List<Any>, start: Int, end: Int): List<Any> {

    return t.subList(start, end)
}
/**
 * Given a tuple t, slice it from index 'start' to index 'end' (excluding 'end') and return the sliced tuple.
 *
 * @param t The input tuple.
 * @param start The index to start the slice from.
 * @param end The index to end the slice (exclusive).
 * @return The sliced tuple.
 *
 * Example:
 * Given the tuple t = (1, 2, 3, 4, 5), and start = 1, end = 4, the output should be (2, 3, 4).
 */
fun sliceTuple(t: List<Any>, start: Int, end: Int): List<Any> {
/**
 * Given a tuple t, slice it from index 'start' to index 'end' (excluding 'end') and return the sliced tuple.
 *
 * @param t The input tuple.
 * @param start The index to start the slice from.
 * @param end The index to end the slice (exclusive).
 * @return The sliced tuple.
 *
 * Example:
 * Given the tuple t = (1, 2, 3, 4, 5), and start = 1, end = 4, the output should be (2, 3, 4).
 */
fun sliceTuple(t: List<Any>, start: Int, end: Int): List<Any> {

    return t.subList(start, end)
}