py3 handles io differently.