modify setup.py and api