adding python 3 support