functor (Generator : Generator-> Class