generator responsibility