gen.py