code: def diff_commonOverlap(self, text1, text2):
      
      # Cache the text lengths to prevent multiple calls.
      text1_length = len(text1)
      text2_length = len(text2)
      # Eliminate the null case.
      if text1_length == 0 or text2_length == 0:
        return 0
      # Truncate the longer string.
      if text1_length > text2_length:
        text1 = text1[-text2_length:]
      elif text1_length < text2_length:
        text2 = text2[:text1_length]
      text_length = min(text1_length, text2_length)
      # Quick check for the worst case.
      if text1 == text2:
        return text_length
  
      # Start by looking for a single character match
      # and increase length until no match is found.
      # Performance analysis: https://neil.fraser.name/news/2010/11/04/
      best = 0
      length = 1
      while True:
        pattern = text1[-length:]
        found = text2.find(pattern)
        if found == -1:
          return best
        length += found
        if found == 0 or text1[-length:] == text2[:length]:
          best = length
          length += 1
docs: Determine if the suffix of one string is the prefix of another.
  
      Args:
        text1 First string.
        text2 Second string.
  
      Returns:
        The number of characters common to the end of the first
        string and the start of the second string.