change generator according to the design