protected <T> boolean isSameSetPrivate(Set<T> obj1, Set<T> obj2) {
		// make sure both sets have the same size number of elements
		if (obj1.size() != obj2.size())
			return false;

		// return obj1.containsAll(obj2);

		// the sets have the same size - pick one
		for (T item1 : obj1) {
			boolean match = false; // did we find a match for this item?

			// make sure each item of the first set matches an item in the
			// second set
			for (T item2 : obj2) {
				// now compare the corresponding values using 'equals' as
				// required
				// for the Set interface
				if (item1.equals(item2))
					match = true; // match found
			}

			// no match found for this item
			if (match == false) {
				System.out.println("Mismatch for " + obj1 + " and " + obj2);
				return false;
			}
		}

		// all tests passed
		return true;

	}