Few modifications for python 2 & 3 compatibility.