Что бы понять рекурсию просмотрите под деббагером код в методе Activate