improved generators