add support for Python 3