adding functors
continuing