class RangeLongBlock implements Comparable<RangeLongBlock>, Iterable<Long> {

    public static RangeLongBlock merge(RangeLongBlock one, RangeLongBlock two)
    {
        RangeLongBlock merged = null;
        if (one.formsContiguousRange(two))
        {
            long start = one.myStartValue < two.myStartValue ? one.myStartValue : two.myStartValue;
            long end = one.myEndValue > two.myEndValue ? one.myEndValue : two.myEndValue;
            merged = new RangeLongBlock(start, end);
        }
        return merged;
    }

    public  RangeLongBlock(long value);
    public  RangeLongBlock(long startValue, long endValue);
    public  RangeLongBlock(RangeLongBlock other);

}