Is this recursive? If so, what happens with duplicate names?