update code generation