fixed algorithms for python 2.6