refactor custom_gen