improving code generation