да, и я немного еще улучшил этот алгоритм