follow generator_hexe pattern