Является ли символ смягчающим.

        :let: Объект буквы, которую пытаемся смягчить.

def is_softener(self, let):
        """
        Является ли символ смягчающим.

        :let: Объект буквы, которую пытаемся смягчить.
        """
        if let.letter in let.forever_hard:
            return False
        if not let.is_consonant():
            return False
        if self.letter in self.vovels_set_soft:
            return True
        if self.letter == 'ь':
            return True
        if self.is_soft() and (let.letter in "дзнст"):
            return True
        if self.letter == 'ъ':
            if self.end("раз") or self.end("из") or self.end("с"):
                return True
        return False