initial python 3 compatibility