tests pass in python 2 and 3