text: public override void Decode(byte[] blocks, int blocksOffset, int[] values, int valuesOffset, int iterations){for (int i = 0; i < iterations; ++i){int byte0 = blocks[blocksOffset++] & 0xFF;int byte1 = blocks[blocksOffset++] & 0xFF;values[valuesOffset++] = (byte0 << 2) | ((int)((uint)byte1 >> 6));int byte2 = blocks[blocksOffset++] & 0xFF;values[valuesOffset++] = ((byte1 & 63) << 4) | ((int)((uint)byte2 >> 4));int byte3 = blocks[blocksOffset++] & 0xFF;values[valuesOffset++] = ((byte2 & 15) << 6) | ((int)((uint)byte3 >> 2));int byte4 = blocks[blocksOffset++] & 0xFF;values[valuesOffset++] = ((byte3 & 3) << 8) | byte4;}}