added hsv as a function object not rerferencing a concrete id