def maxProduct(self, words):
    '\n        :type words: List[str]\n        :rtype: int\n        '
    wordsDict = {}
    for word in words:
        wordsDict[word] = set(word)
    output = 0
    for i in range(len(words)):
        for j in range((i + 1), len(words)):
            if (not (wordsDict[words[i]] & wordsDict[words[j]])):
                output = max(output, (len(words[i]) * len(words[j])))
    return output
:type words: List[str]
:rtype: int
def maxProduct(self, words):
    '\n        :type words: List[str]\n        :rtype: int\n        '
    wordsDict = {}
    for word in words:
        wordsDict[word] = set(word)
    output = 0
    for i in range(len(words)):
        for j in range((i + 1), len(words)):
            if (not (wordsDict[words[i]] & wordsDict[words[j]])):
                output = max(output, (len(words[i]) * len(words[j])))
    return output