now py3k compatible