generator improvements