not especially python2
python2/3 exception handling