added support for duplicate identification and avoiding name collision