This may not be robust against Python 3