more robust id naming