input: Write a function to find the largest three numbers in a given list. If the list has fewer than three numbers, return all numbers in descending order. The function should return a list of the largest three numbers.
  
  def find_largest_three(numbers):
      if len(numbers) < 3:
          return sorted(numbers, reverse=True)
      return sorted(numbers)[-3:]
  
  assert find_largest_three([1, 6, 3, 8, 7, 4]) == [6, 7, 8]
  assert find_largest_three([10, 20]) == [20, 10]
  assert find_largest_three([5, 15, 10, 20, 18]) == [15, 18, 20]
  assert find_largest_three([]) == []
  assert find_largest_three([7, 3, 9]) == [3, 7, 9]
output: def find_largest_three(numbers):
      if len(numbers) < 3:
          return sorted(numbers, reverse=True)
      return sorted(numbers)[-3:]