input: Write a python function to generate a unique random number in a given range and maintain a list of all generated numbers.
  assert generate_unique_random(1, 10, []) in range(1, 11)
  assert generate_unique_random(1, 10, [1, 2, 3, 4, 5, 6, 7, 8, 9]) == 10
  assert generate_unique_random(1, 5, [1, 2, 3, 4, 5]) is None
output: import random
  
  def generate_unique_random(start, end, generated_numbers):
      if len(generated_numbers) >= (end - start + 1):
          return None
  
      unique_random = random.randint(start, end)
      while unique_random in generated_numbers:
          unique_random = random.randint(start, end)
      
      return unique_random