refactored out generate_num