Немного оптимизировал (теперь в два раза быстрее)