Bug 315281 update copyrights for 3.6
bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/databinding/observable/set/SetDiff.java
* this diff were applied to it. The passed-in list is presumed to contain
	 * all elements in {@link #getRemovals()}, and none of the elements in
	 * {@link #getAdditions()}.
	 * <p>
	 * <b>Note</b>:the returned list is only guaranteed to be valid while the
	 * passed in set remains unchanged.
	 * 
	 * @param set
	 *            the set over which the diff will be simulated
	 * @return a {@link Set} showing what <code>set</code> would look like if it
	 *         were passed to the {@link #applyTo(Set)} method.
	 * @since 1.3
	 */
	public Set simulateOn(Set set) {
		return new DeltaSet(set, this);
	}
	private static class DeltaSet extends AbstractSet {
		private Set original;
		private final SetDiff diff;
		public DeltaSet(Set original, SetDiff diff) {
			this.original = original;
			this.diff = diff;
		}
		public Iterator iterator() {
			return new Iterator() {
				Iterator orig = original.iterator();
				Iterator add = diff.getAdditions().iterator();
				boolean haveNext = false;
				Object next;
				public boolean hasNext() {