modified to upload to pypi