class RangeEdgePartition extends RangePartition {

    @Override
    public boolean equals(Object obj) {
        if (obj == this) {
            return true;
        }
        if (!(obj instanceof RangeEdgePartition)) {
            return false;
        }
        RangeEdgePartition other = (RangeEdgePartition)obj;
        return super.equals(other) &&
                value == other.value &&
                lowerBound == other.lowerBound &&
                upperBound == other.upperBound;
    }

    public  RangeEdgePartition(String label, long value, int lower, int upper);

}