modified from ianpreston/oh-my-py