Updated for compatibility with python 2.6