public boolean equal(Object o) {
		C other = (C) o;
		if (other.getAry() != this.getAry()) {
			return false;
		} else {
			if (this.getAry() == 2) {
				return this.label.equals(other.getLabel()) && this.left.getLabel().equals(other.getLeft().getLabel()) && this.right.getLabel().equals(other.getRight().getLabel());
			} else {
				return this.label.equals(other.getLabel()) && this.left.getLabel().equals(other.getLeft().getLabel());
			}
		}
	}