add core.py