Since it is py2, i suppose asyncio is out of the picture
Is there anything missing that prompted you to reimplement ?
Since it is py2, i suppose asyncio is out of the picture