input: from typing import List, Tuple
  
  
  def compute_fizz_buzz(range_end: int) -> List[Tuple[int, str]]:
      """ Generate a list of tuples where each tuple contains a number from 1 to range_end
      and its corresponding "FizzBuzz" output. For multiples of 3, use "Fizz", for multiples
      of 5, use "Buzz", and for multiples of both 3 and 5, use "FizzBuzz".
      >>> compute_fizz_buzz(5)
      [(1, '1'), (2, '2'), (3, 'Fizz'), (4, '4'), (5, 'Buzz')]
      >>> compute_fizz_buzz(15)
      [(1, '1'), (2, '2'), (3, 'Fizz'), (4, '4'), (5, 'Buzz'), (6, 'Fizz'), (7, '7'), (8, '8'), (9, 'Fizz'), (10, 'Buzz'), (11, '11'), (12, 'Fizz'), (13, '13'), (14, '14'), (15, 'FizzBuzz')]
      """
      result = []
      for i in range(1, range_end + 1):
          if i % 3 == 0 and i % 5 == 0:
              result.append((i, "FizzBuzz"))
          elif i % 3 == 0:
              result.append((i, "Fizz"))
          elif i % 5 == 0:
              result.append((i, "Buzz"))
          else:
              result.append((i, str(i)))
      return result
output:     result = []
      for i in range(1, range_end + 1):
          if i % 3 == 0 and i % 5 == 0:
              result.append((i, "FizzBuzz"))
          elif i % 3 == 0:
              result.append((i, "Fizz"))
          elif i % 5 == 0:
              result.append((i, "Buzz"))
          else:
              result.append((i, str(i)))
      return result