adding proper py3k support