add options to generate the two types
add options to generate the two types