change generate rule