Add more code generation logic