added uniqueId() method