more Python 3 compatibility