input: Write a function to return the top 5 most frequent words in a given sentence as a list of (word, frequency) tuples. If the sentence is empty, return an empty list.
  def top_5_frequent_words(sentence: str) -> list:
      if sentence == "":
          return []
      words = sentence.split()
      counter = collections.Counter(words)
      result = counter.most_common(5)
      return result
  
  assert top_5_frequent_words("Python is an interpreted, high-level, general-purpose programming language.") == [('programming', 1), ('language.', 1), ('general-purpose', 1), ('high-level,', 1), ('interpreted,', 1)]
  assert top_5_frequent_words("The quick brown fox jumps over the lazy dog.") == [('The', 1), ('lazy', 1), ('dog.', 1), ('over', 1), ('jumps', 1)]
  assert top_5_frequent_words("Hello world hello") == [('hello', 2), ('world', 1)]
  assert top_5_frequent_words("") == []
output: def top_5_frequent_words(sentence: str) -> list:
      if sentence == "":
          return []
      words = sentence.split()
      counter = collections.Counter(words)
      result = counter.most_common(5)
      return result