this still doesn't work with python 3