add getLongestPublicSubstring()