what's this recursive nonsense?