add missing file core.py