Добавил еще один параметр  рекурсию. Теперь не крешится из-за переполнения стека