Переписано с использованием общих файлов