Restored Python 3 compatibility