public boolean hasSharedInput() {
		return left.hasSharedInput(right) || left.hasSharedInput(middle) ||
		       middle.hasSharedInput(left) || middle.hasSharedInput(right) ||
		       right.hasSharedInput(left) || right.hasSharedInput(middle);
	}