add Generator functions
generators functions added