categories codegen