Moved generation logic out of namegen.py