develop code generation, the model