fix generic.py bug