started working on codegen