add generator