now on both python2 and python3