text: public override long Get(int index){int blockOffset = index / valuesPerBlock;long skip = ((long)blockOffset) << 3;try{@in.Seek(startPointer + skip);long block = @in.ReadInt64();int offsetInBlock = index % valuesPerBlock;return ((long)((ulong)block >> (offsetInBlock * m_bitsPerValue))) & mask;}catch (System.IO.IOException e){throw new InvalidOperationException("failed", e);}}