generators, functors