python 2.6, 2.7, 3.4 compatibility