added uniqueness testing