docs: function(and, or) {
  			var aUnion = set.union(and.values[0], or);
  			var bUnion = set.union(and.values[1], or);
  
  			if (!isAndOrOr(aUnion) || !isAndOrOr(bUnion)) {
  				return set.intersection(aUnion, bUnion);
  			}
  
  			return new is.Or([and, or]);
  		}