extended controller generator