more codegen work