input: Write a function to create a Python class named `StringComparator` 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. The class should have an initializer `__init__` that takes the two strings as arguments and initializes them. The method `is_equal` should return `True` if the strings are equal, otherwise `False`. The method `is_different` should return `True` if the strings are different, otherwise `False`. The method `is_similar` should take an optional threshold parameter (defaulting to 0.5) and return `True` if the strings are similar based on the edit distance divided by the maximum length of the two strings, otherwise `False`.
  
  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", "world").is_different() == True
  assert StringComparator("hello", "hella").is_similar(threshold=0.25) == True
  assert StringComparator("hello", "world").is_similar(threshold=0.25) == 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 = edit_distance(self.string1, self.string2)
    max_length = max(len(self.string1), len(self.string2))
  
    return distance / max_length < threshold
  