added code_gen.rb