added uniqueness functionality