patched for python 2.6