Поиск файлов
Операционная система Вашего компьютера индексирует файлы, расположенные на жестком диске, основываясь на их содержании, а также позволяет производить по ним текстовый поиск. Содержимое каждого файла - непустая строка прописных букв. Для выполнения поиска Вы указываете ключ, который является непустой строкой состоящей из прописных букв. Результатом является список файлов, содержащих ключ как подстроку. Строка s является подстрокой t, если t содержит все символы s в виде непрерывной последовательности. Например, "foofoo", "cafoo", "foota" и "foo" все содержат "foo" как подстроку, в то время как "foa", "fofo", " oo" и "oofo" нет.
Вам известно содержимое каждого файла на жестком диске. Вас интересует, можно ли осуществить поиск для всякого подмножества файлов. Поиск для подмножества файлов осуществить можно, если существует хотя бы один такой ключ, в результате поиска по которому будет найдено в точности имеющееся подмножество файлов. По заданному содержимому файлов на жестком диске Вам следует найти количество непустых подмножеств файлов, для которых возможно осуществить поиск.
Входные данные
Каждый тест задается в нескольких строках. Первая строка содержит число файлов на жестком диске f (1 ≤ f ≤ 60). Каждая из следующих f строк задает содержимое одного файла. Содержимое файла представляет собой непустую строку из не более 10^4 символов; каждый символ - одна из стандартных 26 прописных букв (от 'a' до 'z').
За последним тестом следует строка из одного нуля.
Выходные данные
Для каждого теста вывести в отдельной строке количество непустых подмножеств файлов, для которых возможно осуществить поиск.