portable among py27 py34