Support for python 2.6 and hopefully 3.x