Given a list of numbers and a target number, write a Python program to find the smallest sublist whose sum is greater than or equal to the target. If no such sublist exists, return an empty list.

numbers = [2, 4, 8, 9, 5, 7], target = 15

- First, create an empty list called "sublist" to store the sublists we will be checking.
- Iterate through the numbers in the given list.
  - For each number, append it to the "sublist".
  - Check if the sum of the sublist is greater than or equal to the target number.
    - If yes, return the sublist as we have found the smallest sublist whose sum is greater than or equal to the target.
    - If no, continue to the next step.
  - If the sum of the sublist is less than the target number, remove the first number from the sublist and check the sum again.
    - Repeat this step until the sum is greater than or equal to the target number.
- If we have checked all possible sublists and none of them have a sum greater than or equal to the target, return an empty list.

Example:

Input:
numbers = [1, 2, 3, 4, 5], target = 12

Output:
[4, 5]
def find_smallest_sublist(numbers, target):
    sublist = []
    
    for num in numbers:
        sublist.append(num)
        if sum(sublist) >= target:
            return sublist
        while sum(sublist) < target:
            sublist.pop(0)
    
    return []

# Test the function
numbers = [2, 4, 8, 9, 5, 7]
target = 15
print(find_smallest_sublist(numbers, target))