input: def autocomplete(input_text: str) -> List[str]:
      """
      Generate word predictions based on the input text using an autocomplete system. 
      The system generates word candidates, filters them, ranks them, and returns the top 5 predictions.
      
      >>> autocomplete("hel")
      ['hello', 'help', 'helpful', 'helmet', 'helipad']
      
      >>> autocomplete("pro")
      ['program', 'process', 'progress', 'project', 'professional']
      """
output:     word_candidates = ["hello", "help", "helpful", "helmet", "helipad", "program", "process", "progress", "project", "professional"]
      filtered_candidates = [word for word in word_candidates if word.startswith(input_text)]
      ranked_candidates = sorted(filtered_candidates, key=lambda x: (-len(x), x))
      return ranked_candidates[:5]