input: Write a function to determine if a given input string contains all the words from a provided list of words. If the input string contains all the words, return True; otherwise, return False. If the list of words is empty, return True.
  
  def contains_words(input_string, words):
   for word in words:
   if word not in input_string:
   return False
   return True
  
  assert contains_words('This is a test', ['test', 'this', 'is'])==True
  assert contains_words('This is a test', ['test', 'something'])==False
  assert contains_words('This is a test', [])==True
  assert contains_words('Python is fun', ['Python', 'fun', 'is'])==True
  assert contains_words('Hello world', ['world', 'Hello', 'Goodbye'])==False
output: def contains_words(input_string, words):
      for word in words:
          if word.lower() not in input_string.lower():
              return False
      return True