public List<ZAddressRange<Long>> zOrderSearchCurveLongs(List<ZValueRange> ranges)
    {
        return zOrderSearchCurve(ranges);
    }
@Test
    public void testZOrderSearchEvenCurves()
    {
        List<Integer> bitPositions = ImmutableList.of(2, 2);
        ZOrder zOrder = new ZOrder(bitPositions);

        for (int i = 0; i < SEARCH_CURVE_RANGES.length; i++) {
            List<ZValueRange> ranges = Arrays.stream(SEARCH_CURVE_RANGES[i]).collect(Collectors.toList());

            List<ZAddressRange<Long>> addresses = zOrder.zOrderSearchCurveLongs(ranges);

            assertEquals(addresses, Arrays.stream(EXPECTED_Z_ADDRESS_RANGES[i]).collect(Collectors.toList()));
        }
    }