functorial interface for Set too