public BlockLease flatten(Block block)
    {
        requireNonNull(block, "block is null");
        if (block instanceof DictionaryBlock) {
            return flattenDictionaryBlock((DictionaryBlock) block);
        }
        if (block instanceof RunLengthEncodedBlock) {
            return flattenRunLengthEncodedBlock((RunLengthEncodedBlock) block);
        }
        return newLease(block);
    }
@Test
    public void testLongArrayIdentityDecode()
    {
        Block block = createLongArrayBlock(1, 2, 3, 4);
        try (BlockLease blockLease = flattener.flatten(block)) {
            Block flattenedBlock = blockLease.get();
            assertSame(flattenedBlock, block);
        }
    }