input: Write a function to create a Python class that receives two strings and has methods for comparing the strings and returning whether they are equal, different, or similar up to a provided threshold.
  
  class StringComparator:
  
  def __init__(self, string1, string2):
   self.string1 = string1
   self.string2 = string2
  
  def is_equal(self):
   return self.string1 == self.string2
  
  def is_different(self):
   return self.string1 != self.string2
  
  def is_similar(self, threshold=0.5):
   distance = edit_distance(self.string1, self.string2)
   max_length = max(len(self.string1), len(self.string2))
  
   return distance / max_length < threshold
  
  assert StringComparator("hello", "hello").is_equal()==True
  assert StringComparator("hello", "hallo").is_equal()==False
  assert StringComparator("hello", "hallo").is_different()==True
  assert StringComparator("hello", "hallo").is_similar()==True
  assert StringComparator("hello", "halo").is_similar()==False
output: 
  class StringComparator:
  
      def __init__(self, string1, string2):
          self.string1 = string1
          self.string2 = string2
  
      def is_equal(self):
          return self.string1 == self.string2
  
      def is_different(self):
          return self.string1 != self.string2
  
      def is_similar(self, threshold=0.5):
          distance = self.edit_distance(self.string1, self.string2)
          max_length = max(len(self.string1), len(self.string2))
          return distance / max_length < threshold
  
      def edit_distance(self, s1, s2):
          if len(s1) < len(s2):
              return self.edit_distance(s2, s1)
          if len(s2) == 0:
              return len(s1)
          previous_row = range(len(s2) + 1)
          for i, c1 in enumerate(s1):
              current_row = [i + 1]
              for j, c2 in enumerate(s2):
                  insertions = previous_row[j + 1] + 1
                  deletions = current_row[j] + 1
                  substitutions = previous_row[j] + (c1 != c2)
                  current_row.append(min(insertions, deletions, substitutions))
              previous_row = current_row
          return previous_row[-1]
  