Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
org.apache.parquet.column.values.bitpacking.ByteBitPackingForLongLE Maven / Gradle / Ivy
package org.apache.parquet.column.values.bitpacking;
import java.nio.ByteBuffer;
/**
* Packs from the Least Significant Bit first
*
* See ByteBasedBitPackingGenerator to make changes to this file
* Automatically generated
*
*/
public abstract class ByteBitPackingForLongLE {
private static final BytePackerForLong[] packers = new BytePackerForLong[65];
static {
packers[0] = new Packer0();
packers[1] = new Packer1();
packers[2] = new Packer2();
packers[3] = new Packer3();
packers[4] = new Packer4();
packers[5] = new Packer5();
packers[6] = new Packer6();
packers[7] = new Packer7();
packers[8] = new Packer8();
packers[9] = new Packer9();
packers[10] = new Packer10();
packers[11] = new Packer11();
packers[12] = new Packer12();
packers[13] = new Packer13();
packers[14] = new Packer14();
packers[15] = new Packer15();
packers[16] = new Packer16();
packers[17] = new Packer17();
packers[18] = new Packer18();
packers[19] = new Packer19();
packers[20] = new Packer20();
packers[21] = new Packer21();
packers[22] = new Packer22();
packers[23] = new Packer23();
packers[24] = new Packer24();
packers[25] = new Packer25();
packers[26] = new Packer26();
packers[27] = new Packer27();
packers[28] = new Packer28();
packers[29] = new Packer29();
packers[30] = new Packer30();
packers[31] = new Packer31();
packers[32] = new Packer32();
packers[33] = new Packer33();
packers[34] = new Packer34();
packers[35] = new Packer35();
packers[36] = new Packer36();
packers[37] = new Packer37();
packers[38] = new Packer38();
packers[39] = new Packer39();
packers[40] = new Packer40();
packers[41] = new Packer41();
packers[42] = new Packer42();
packers[43] = new Packer43();
packers[44] = new Packer44();
packers[45] = new Packer45();
packers[46] = new Packer46();
packers[47] = new Packer47();
packers[48] = new Packer48();
packers[49] = new Packer49();
packers[50] = new Packer50();
packers[51] = new Packer51();
packers[52] = new Packer52();
packers[53] = new Packer53();
packers[54] = new Packer54();
packers[55] = new Packer55();
packers[56] = new Packer56();
packers[57] = new Packer57();
packers[58] = new Packer58();
packers[59] = new Packer59();
packers[60] = new Packer60();
packers[61] = new Packer61();
packers[62] = new Packer62();
packers[63] = new Packer63();
packers[64] = new Packer64();
}
public static final BytePackerForLongFactory factory = new BytePackerForLongFactory() {
public BytePackerForLong newBytePackerForLong(int bitWidth) {
return packers[bitWidth];
}
};
private static final class Packer0 extends BytePackerForLong {
private Packer0() {
super(0);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
}
}
private static final class Packer1 extends BytePackerForLong {
private Packer1() {
super(1);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_______0]
// [0]
((in[ 0 + inPos] & 1L))
| // [______1_]
// [0]
((in[ 1 + inPos] & 1L) << 1)
| // [_____2__]
// [0]
((in[ 2 + inPos] & 1L) << 2)
| // [____3___]
// [0]
((in[ 3 + inPos] & 1L) << 3)
| // [___4____]
// [0]
((in[ 4 + inPos] & 1L) << 4)
| // [__5_____]
// [0]
((in[ 5 + inPos] & 1L) << 5)
| // [_6______]
// [0]
((in[ 6 + inPos] & 1L) << 6)
| // [7_______]
// [0]
((in[ 7 + inPos] & 1L) << 7)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_______0]
// [0]
((in[ 0 + inPos] & 1L))
| // [______1_]
// [0]
((in[ 1 + inPos] & 1L) << 1)
| // [_____2__]
// [0]
((in[ 2 + inPos] & 1L) << 2)
| // [____3___]
// [0]
((in[ 3 + inPos] & 1L) << 3)
| // [___4____]
// [0]
((in[ 4 + inPos] & 1L) << 4)
| // [__5_____]
// [0]
((in[ 5 + inPos] & 1L) << 5)
| // [_6______]
// [0]
((in[ 6 + inPos] & 1L) << 6)
| // [7_______]
// [0]
((in[ 7 + inPos] & 1L) << 7)) & 255);
out[ 1 + outPos] = (byte)((
// [_______0]
// [0]
((in[ 8 + inPos] & 1L))
| // [______1_]
// [0]
((in[ 9 + inPos] & 1L) << 1)
| // [_____2__]
// [0]
((in[10 + inPos] & 1L) << 2)
| // [____3___]
// [0]
((in[11 + inPos] & 1L) << 3)
| // [___4____]
// [0]
((in[12 + inPos] & 1L) << 4)
| // [__5_____]
// [0]
((in[13 + inPos] & 1L) << 5)
| // [_6______]
// [0]
((in[14 + inPos] & 1L) << 6)
| // [7_______]
// [0]
((in[15 + inPos] & 1L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [_______0]
// [0]
((in[16 + inPos] & 1L))
| // [______1_]
// [0]
((in[17 + inPos] & 1L) << 1)
| // [_____2__]
// [0]
((in[18 + inPos] & 1L) << 2)
| // [____3___]
// [0]
((in[19 + inPos] & 1L) << 3)
| // [___4____]
// [0]
((in[20 + inPos] & 1L) << 4)
| // [__5_____]
// [0]
((in[21 + inPos] & 1L) << 5)
| // [_6______]
// [0]
((in[22 + inPos] & 1L) << 6)
| // [7_______]
// [0]
((in[23 + inPos] & 1L) << 7)) & 255);
out[ 3 + outPos] = (byte)((
// [_______0]
// [0]
((in[24 + inPos] & 1L))
| // [______1_]
// [0]
((in[25 + inPos] & 1L) << 1)
| // [_____2__]
// [0]
((in[26 + inPos] & 1L) << 2)
| // [____3___]
// [0]
((in[27 + inPos] & 1L) << 3)
| // [___4____]
// [0]
((in[28 + inPos] & 1L) << 4)
| // [__5_____]
// [0]
((in[29 + inPos] & 1L) << 5)
| // [_6______]
// [0]
((in[30 + inPos] & 1L) << 6)
| // [7_______]
// [0]
((in[31 + inPos] & 1L) << 7)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_______0]
// [0]
((((long)in[ 0 + inPos]) ) & 1L);
out[ 1 + outPos] =
// [______1_]
// [0]
((((long)in[ 0 + inPos]) >> 1) & 1L);
out[ 2 + outPos] =
// [_____2__]
// [0]
((((long)in[ 0 + inPos]) >> 2) & 1L);
out[ 3 + outPos] =
// [____3___]
// [0]
((((long)in[ 0 + inPos]) >> 3) & 1L);
out[ 4 + outPos] =
// [___4____]
// [0]
((((long)in[ 0 + inPos]) >> 4) & 1L);
out[ 5 + outPos] =
// [__5_____]
// [0]
((((long)in[ 0 + inPos]) >> 5) & 1L);
out[ 6 + outPos] =
// [_6______]
// [0]
((((long)in[ 0 + inPos]) >> 6) & 1L);
out[ 7 + outPos] =
// [7_______]
// [0]
((((long)in[ 0 + inPos]) >> 7) & 1L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_______0]
// [0]
((((long)in.get( 0 + inPos)) ) & 1L);
out[ 1 + outPos] =
// [______1_]
// [0]
((((long)in.get( 0 + inPos)) >> 1) & 1L);
out[ 2 + outPos] =
// [_____2__]
// [0]
((((long)in.get( 0 + inPos)) >> 2) & 1L);
out[ 3 + outPos] =
// [____3___]
// [0]
((((long)in.get( 0 + inPos)) >> 3) & 1L);
out[ 4 + outPos] =
// [___4____]
// [0]
((((long)in.get( 0 + inPos)) >> 4) & 1L);
out[ 5 + outPos] =
// [__5_____]
// [0]
((((long)in.get( 0 + inPos)) >> 5) & 1L);
out[ 6 + outPos] =
// [_6______]
// [0]
((((long)in.get( 0 + inPos)) >> 6) & 1L);
out[ 7 + outPos] =
// [7_______]
// [0]
((((long)in.get( 0 + inPos)) >> 7) & 1L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_______0]
// [0]
((((long)in[ 0 + inPos]) ) & 1L);
out[ 1 + outPos] =
// [______1_]
// [0]
((((long)in[ 0 + inPos]) >> 1) & 1L);
out[ 2 + outPos] =
// [_____2__]
// [0]
((((long)in[ 0 + inPos]) >> 2) & 1L);
out[ 3 + outPos] =
// [____3___]
// [0]
((((long)in[ 0 + inPos]) >> 3) & 1L);
out[ 4 + outPos] =
// [___4____]
// [0]
((((long)in[ 0 + inPos]) >> 4) & 1L);
out[ 5 + outPos] =
// [__5_____]
// [0]
((((long)in[ 0 + inPos]) >> 5) & 1L);
out[ 6 + outPos] =
// [_6______]
// [0]
((((long)in[ 0 + inPos]) >> 6) & 1L);
out[ 7 + outPos] =
// [7_______]
// [0]
((((long)in[ 0 + inPos]) >> 7) & 1L);
out[ 8 + outPos] =
// [_______0]
// [0]
((((long)in[ 1 + inPos]) ) & 1L);
out[ 9 + outPos] =
// [______1_]
// [0]
((((long)in[ 1 + inPos]) >> 1) & 1L);
out[10 + outPos] =
// [_____2__]
// [0]
((((long)in[ 1 + inPos]) >> 2) & 1L);
out[11 + outPos] =
// [____3___]
// [0]
((((long)in[ 1 + inPos]) >> 3) & 1L);
out[12 + outPos] =
// [___4____]
// [0]
((((long)in[ 1 + inPos]) >> 4) & 1L);
out[13 + outPos] =
// [__5_____]
// [0]
((((long)in[ 1 + inPos]) >> 5) & 1L);
out[14 + outPos] =
// [_6______]
// [0]
((((long)in[ 1 + inPos]) >> 6) & 1L);
out[15 + outPos] =
// [7_______]
// [0]
((((long)in[ 1 + inPos]) >> 7) & 1L);
out[16 + outPos] =
// [_______0]
// [0]
((((long)in[ 2 + inPos]) ) & 1L);
out[17 + outPos] =
// [______1_]
// [0]
((((long)in[ 2 + inPos]) >> 1) & 1L);
out[18 + outPos] =
// [_____2__]
// [0]
((((long)in[ 2 + inPos]) >> 2) & 1L);
out[19 + outPos] =
// [____3___]
// [0]
((((long)in[ 2 + inPos]) >> 3) & 1L);
out[20 + outPos] =
// [___4____]
// [0]
((((long)in[ 2 + inPos]) >> 4) & 1L);
out[21 + outPos] =
// [__5_____]
// [0]
((((long)in[ 2 + inPos]) >> 5) & 1L);
out[22 + outPos] =
// [_6______]
// [0]
((((long)in[ 2 + inPos]) >> 6) & 1L);
out[23 + outPos] =
// [7_______]
// [0]
((((long)in[ 2 + inPos]) >> 7) & 1L);
out[24 + outPos] =
// [_______0]
// [0]
((((long)in[ 3 + inPos]) ) & 1L);
out[25 + outPos] =
// [______1_]
// [0]
((((long)in[ 3 + inPos]) >> 1) & 1L);
out[26 + outPos] =
// [_____2__]
// [0]
((((long)in[ 3 + inPos]) >> 2) & 1L);
out[27 + outPos] =
// [____3___]
// [0]
((((long)in[ 3 + inPos]) >> 3) & 1L);
out[28 + outPos] =
// [___4____]
// [0]
((((long)in[ 3 + inPos]) >> 4) & 1L);
out[29 + outPos] =
// [__5_____]
// [0]
((((long)in[ 3 + inPos]) >> 5) & 1L);
out[30 + outPos] =
// [_6______]
// [0]
((((long)in[ 3 + inPos]) >> 6) & 1L);
out[31 + outPos] =
// [7_______]
// [0]
((((long)in[ 3 + inPos]) >> 7) & 1L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_______0]
// [0]
((((long)in.get( 0 + inPos)) ) & 1L);
out[ 1 + outPos] =
// [______1_]
// [0]
((((long)in.get( 0 + inPos)) >> 1) & 1L);
out[ 2 + outPos] =
// [_____2__]
// [0]
((((long)in.get( 0 + inPos)) >> 2) & 1L);
out[ 3 + outPos] =
// [____3___]
// [0]
((((long)in.get( 0 + inPos)) >> 3) & 1L);
out[ 4 + outPos] =
// [___4____]
// [0]
((((long)in.get( 0 + inPos)) >> 4) & 1L);
out[ 5 + outPos] =
// [__5_____]
// [0]
((((long)in.get( 0 + inPos)) >> 5) & 1L);
out[ 6 + outPos] =
// [_6______]
// [0]
((((long)in.get( 0 + inPos)) >> 6) & 1L);
out[ 7 + outPos] =
// [7_______]
// [0]
((((long)in.get( 0 + inPos)) >> 7) & 1L);
out[ 8 + outPos] =
// [_______0]
// [0]
((((long)in.get( 1 + inPos)) ) & 1L);
out[ 9 + outPos] =
// [______1_]
// [0]
((((long)in.get( 1 + inPos)) >> 1) & 1L);
out[10 + outPos] =
// [_____2__]
// [0]
((((long)in.get( 1 + inPos)) >> 2) & 1L);
out[11 + outPos] =
// [____3___]
// [0]
((((long)in.get( 1 + inPos)) >> 3) & 1L);
out[12 + outPos] =
// [___4____]
// [0]
((((long)in.get( 1 + inPos)) >> 4) & 1L);
out[13 + outPos] =
// [__5_____]
// [0]
((((long)in.get( 1 + inPos)) >> 5) & 1L);
out[14 + outPos] =
// [_6______]
// [0]
((((long)in.get( 1 + inPos)) >> 6) & 1L);
out[15 + outPos] =
// [7_______]
// [0]
((((long)in.get( 1 + inPos)) >> 7) & 1L);
out[16 + outPos] =
// [_______0]
// [0]
((((long)in.get( 2 + inPos)) ) & 1L);
out[17 + outPos] =
// [______1_]
// [0]
((((long)in.get( 2 + inPos)) >> 1) & 1L);
out[18 + outPos] =
// [_____2__]
// [0]
((((long)in.get( 2 + inPos)) >> 2) & 1L);
out[19 + outPos] =
// [____3___]
// [0]
((((long)in.get( 2 + inPos)) >> 3) & 1L);
out[20 + outPos] =
// [___4____]
// [0]
((((long)in.get( 2 + inPos)) >> 4) & 1L);
out[21 + outPos] =
// [__5_____]
// [0]
((((long)in.get( 2 + inPos)) >> 5) & 1L);
out[22 + outPos] =
// [_6______]
// [0]
((((long)in.get( 2 + inPos)) >> 6) & 1L);
out[23 + outPos] =
// [7_______]
// [0]
((((long)in.get( 2 + inPos)) >> 7) & 1L);
out[24 + outPos] =
// [_______0]
// [0]
((((long)in.get( 3 + inPos)) ) & 1L);
out[25 + outPos] =
// [______1_]
// [0]
((((long)in.get( 3 + inPos)) >> 1) & 1L);
out[26 + outPos] =
// [_____2__]
// [0]
((((long)in.get( 3 + inPos)) >> 2) & 1L);
out[27 + outPos] =
// [____3___]
// [0]
((((long)in.get( 3 + inPos)) >> 3) & 1L);
out[28 + outPos] =
// [___4____]
// [0]
((((long)in.get( 3 + inPos)) >> 4) & 1L);
out[29 + outPos] =
// [__5_____]
// [0]
((((long)in.get( 3 + inPos)) >> 5) & 1L);
out[30 + outPos] =
// [_6______]
// [0]
((((long)in.get( 3 + inPos)) >> 6) & 1L);
out[31 + outPos] =
// [7_______]
// [0]
((((long)in.get( 3 + inPos)) >> 7) & 1L);
}
}
private static final class Packer2 extends BytePackerForLong {
private Packer2() {
super(2);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [______10]
// [10]
((in[ 0 + inPos] & 3L))
| // [____32__]
// [10]
((in[ 1 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[ 2 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[ 3 + inPos] & 3L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [10]
((in[ 4 + inPos] & 3L))
| // [____32__]
// [10]
((in[ 5 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[ 6 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[ 7 + inPos] & 3L) << 6)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [______10]
// [10]
((in[ 0 + inPos] & 3L))
| // [____32__]
// [10]
((in[ 1 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[ 2 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[ 3 + inPos] & 3L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [10]
((in[ 4 + inPos] & 3L))
| // [____32__]
// [10]
((in[ 5 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[ 6 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[ 7 + inPos] & 3L) << 6)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [10]
((in[ 8 + inPos] & 3L))
| // [____32__]
// [10]
((in[ 9 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[10 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[11 + inPos] & 3L) << 6)) & 255);
out[ 3 + outPos] = (byte)((
// [______10]
// [10]
((in[12 + inPos] & 3L))
| // [____32__]
// [10]
((in[13 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[14 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[15 + inPos] & 3L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [______10]
// [10]
((in[16 + inPos] & 3L))
| // [____32__]
// [10]
((in[17 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[18 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[19 + inPos] & 3L) << 6)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [10]
((in[20 + inPos] & 3L))
| // [____32__]
// [10]
((in[21 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[22 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[23 + inPos] & 3L) << 6)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [10]
((in[24 + inPos] & 3L))
| // [____32__]
// [10]
((in[25 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[26 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[27 + inPos] & 3L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [______10]
// [10]
((in[28 + inPos] & 3L))
| // [____32__]
// [10]
((in[29 + inPos] & 3L) << 2)
| // [__54____]
// [10]
((in[30 + inPos] & 3L) << 4)
| // [76______]
// [10]
((in[31 + inPos] & 3L) << 6)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [______10]
// [10]
((((long)in[ 0 + inPos]) ) & 3L);
out[ 1 + outPos] =
// [____32__]
// [10]
((((long)in[ 0 + inPos]) >> 2) & 3L);
out[ 2 + outPos] =
// [__54____]
// [10]
((((long)in[ 0 + inPos]) >> 4) & 3L);
out[ 3 + outPos] =
// [76______]
// [10]
((((long)in[ 0 + inPos]) >> 6) & 3L);
out[ 4 + outPos] =
// [______10]
// [10]
((((long)in[ 1 + inPos]) ) & 3L);
out[ 5 + outPos] =
// [____32__]
// [10]
((((long)in[ 1 + inPos]) >> 2) & 3L);
out[ 6 + outPos] =
// [__54____]
// [10]
((((long)in[ 1 + inPos]) >> 4) & 3L);
out[ 7 + outPos] =
// [76______]
// [10]
((((long)in[ 1 + inPos]) >> 6) & 3L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [______10]
// [10]
((((long)in.get( 0 + inPos)) ) & 3L);
out[ 1 + outPos] =
// [____32__]
// [10]
((((long)in.get( 0 + inPos)) >> 2) & 3L);
out[ 2 + outPos] =
// [__54____]
// [10]
((((long)in.get( 0 + inPos)) >> 4) & 3L);
out[ 3 + outPos] =
// [76______]
// [10]
((((long)in.get( 0 + inPos)) >> 6) & 3L);
out[ 4 + outPos] =
// [______10]
// [10]
((((long)in.get( 1 + inPos)) ) & 3L);
out[ 5 + outPos] =
// [____32__]
// [10]
((((long)in.get( 1 + inPos)) >> 2) & 3L);
out[ 6 + outPos] =
// [__54____]
// [10]
((((long)in.get( 1 + inPos)) >> 4) & 3L);
out[ 7 + outPos] =
// [76______]
// [10]
((((long)in.get( 1 + inPos)) >> 6) & 3L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [______10]
// [10]
((((long)in[ 0 + inPos]) ) & 3L);
out[ 1 + outPos] =
// [____32__]
// [10]
((((long)in[ 0 + inPos]) >> 2) & 3L);
out[ 2 + outPos] =
// [__54____]
// [10]
((((long)in[ 0 + inPos]) >> 4) & 3L);
out[ 3 + outPos] =
// [76______]
// [10]
((((long)in[ 0 + inPos]) >> 6) & 3L);
out[ 4 + outPos] =
// [______10]
// [10]
((((long)in[ 1 + inPos]) ) & 3L);
out[ 5 + outPos] =
// [____32__]
// [10]
((((long)in[ 1 + inPos]) >> 2) & 3L);
out[ 6 + outPos] =
// [__54____]
// [10]
((((long)in[ 1 + inPos]) >> 4) & 3L);
out[ 7 + outPos] =
// [76______]
// [10]
((((long)in[ 1 + inPos]) >> 6) & 3L);
out[ 8 + outPos] =
// [______10]
// [10]
((((long)in[ 2 + inPos]) ) & 3L);
out[ 9 + outPos] =
// [____32__]
// [10]
((((long)in[ 2 + inPos]) >> 2) & 3L);
out[10 + outPos] =
// [__54____]
// [10]
((((long)in[ 2 + inPos]) >> 4) & 3L);
out[11 + outPos] =
// [76______]
// [10]
((((long)in[ 2 + inPos]) >> 6) & 3L);
out[12 + outPos] =
// [______10]
// [10]
((((long)in[ 3 + inPos]) ) & 3L);
out[13 + outPos] =
// [____32__]
// [10]
((((long)in[ 3 + inPos]) >> 2) & 3L);
out[14 + outPos] =
// [__54____]
// [10]
((((long)in[ 3 + inPos]) >> 4) & 3L);
out[15 + outPos] =
// [76______]
// [10]
((((long)in[ 3 + inPos]) >> 6) & 3L);
out[16 + outPos] =
// [______10]
// [10]
((((long)in[ 4 + inPos]) ) & 3L);
out[17 + outPos] =
// [____32__]
// [10]
((((long)in[ 4 + inPos]) >> 2) & 3L);
out[18 + outPos] =
// [__54____]
// [10]
((((long)in[ 4 + inPos]) >> 4) & 3L);
out[19 + outPos] =
// [76______]
// [10]
((((long)in[ 4 + inPos]) >> 6) & 3L);
out[20 + outPos] =
// [______10]
// [10]
((((long)in[ 5 + inPos]) ) & 3L);
out[21 + outPos] =
// [____32__]
// [10]
((((long)in[ 5 + inPos]) >> 2) & 3L);
out[22 + outPos] =
// [__54____]
// [10]
((((long)in[ 5 + inPos]) >> 4) & 3L);
out[23 + outPos] =
// [76______]
// [10]
((((long)in[ 5 + inPos]) >> 6) & 3L);
out[24 + outPos] =
// [______10]
// [10]
((((long)in[ 6 + inPos]) ) & 3L);
out[25 + outPos] =
// [____32__]
// [10]
((((long)in[ 6 + inPos]) >> 2) & 3L);
out[26 + outPos] =
// [__54____]
// [10]
((((long)in[ 6 + inPos]) >> 4) & 3L);
out[27 + outPos] =
// [76______]
// [10]
((((long)in[ 6 + inPos]) >> 6) & 3L);
out[28 + outPos] =
// [______10]
// [10]
((((long)in[ 7 + inPos]) ) & 3L);
out[29 + outPos] =
// [____32__]
// [10]
((((long)in[ 7 + inPos]) >> 2) & 3L);
out[30 + outPos] =
// [__54____]
// [10]
((((long)in[ 7 + inPos]) >> 4) & 3L);
out[31 + outPos] =
// [76______]
// [10]
((((long)in[ 7 + inPos]) >> 6) & 3L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [______10]
// [10]
((((long)in.get( 0 + inPos)) ) & 3L);
out[ 1 + outPos] =
// [____32__]
// [10]
((((long)in.get( 0 + inPos)) >> 2) & 3L);
out[ 2 + outPos] =
// [__54____]
// [10]
((((long)in.get( 0 + inPos)) >> 4) & 3L);
out[ 3 + outPos] =
// [76______]
// [10]
((((long)in.get( 0 + inPos)) >> 6) & 3L);
out[ 4 + outPos] =
// [______10]
// [10]
((((long)in.get( 1 + inPos)) ) & 3L);
out[ 5 + outPos] =
// [____32__]
// [10]
((((long)in.get( 1 + inPos)) >> 2) & 3L);
out[ 6 + outPos] =
// [__54____]
// [10]
((((long)in.get( 1 + inPos)) >> 4) & 3L);
out[ 7 + outPos] =
// [76______]
// [10]
((((long)in.get( 1 + inPos)) >> 6) & 3L);
out[ 8 + outPos] =
// [______10]
// [10]
((((long)in.get( 2 + inPos)) ) & 3L);
out[ 9 + outPos] =
// [____32__]
// [10]
((((long)in.get( 2 + inPos)) >> 2) & 3L);
out[10 + outPos] =
// [__54____]
// [10]
((((long)in.get( 2 + inPos)) >> 4) & 3L);
out[11 + outPos] =
// [76______]
// [10]
((((long)in.get( 2 + inPos)) >> 6) & 3L);
out[12 + outPos] =
// [______10]
// [10]
((((long)in.get( 3 + inPos)) ) & 3L);
out[13 + outPos] =
// [____32__]
// [10]
((((long)in.get( 3 + inPos)) >> 2) & 3L);
out[14 + outPos] =
// [__54____]
// [10]
((((long)in.get( 3 + inPos)) >> 4) & 3L);
out[15 + outPos] =
// [76______]
// [10]
((((long)in.get( 3 + inPos)) >> 6) & 3L);
out[16 + outPos] =
// [______10]
// [10]
((((long)in.get( 4 + inPos)) ) & 3L);
out[17 + outPos] =
// [____32__]
// [10]
((((long)in.get( 4 + inPos)) >> 2) & 3L);
out[18 + outPos] =
// [__54____]
// [10]
((((long)in.get( 4 + inPos)) >> 4) & 3L);
out[19 + outPos] =
// [76______]
// [10]
((((long)in.get( 4 + inPos)) >> 6) & 3L);
out[20 + outPos] =
// [______10]
// [10]
((((long)in.get( 5 + inPos)) ) & 3L);
out[21 + outPos] =
// [____32__]
// [10]
((((long)in.get( 5 + inPos)) >> 2) & 3L);
out[22 + outPos] =
// [__54____]
// [10]
((((long)in.get( 5 + inPos)) >> 4) & 3L);
out[23 + outPos] =
// [76______]
// [10]
((((long)in.get( 5 + inPos)) >> 6) & 3L);
out[24 + outPos] =
// [______10]
// [10]
((((long)in.get( 6 + inPos)) ) & 3L);
out[25 + outPos] =
// [____32__]
// [10]
((((long)in.get( 6 + inPos)) >> 2) & 3L);
out[26 + outPos] =
// [__54____]
// [10]
((((long)in.get( 6 + inPos)) >> 4) & 3L);
out[27 + outPos] =
// [76______]
// [10]
((((long)in.get( 6 + inPos)) >> 6) & 3L);
out[28 + outPos] =
// [______10]
// [10]
((((long)in.get( 7 + inPos)) ) & 3L);
out[29 + outPos] =
// [____32__]
// [10]
((((long)in.get( 7 + inPos)) >> 2) & 3L);
out[30 + outPos] =
// [__54____]
// [10]
((((long)in.get( 7 + inPos)) >> 4) & 3L);
out[31 + outPos] =
// [76______]
// [10]
((((long)in.get( 7 + inPos)) >> 6) & 3L);
}
}
private static final class Packer3 extends BytePackerForLong {
private Packer3() {
super(3);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_____210]
// [210]
((in[ 0 + inPos] & 7L))
| // [__543___]
// [210]
((in[ 1 + inPos] & 7L) << 3)
| // [76______]
// [_10]
((in[ 2 + inPos] & 7L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [_______0]
// [2__]
((in[ 2 + inPos] & 7L) >>> 2)
| // [____321_]
// [210]
((in[ 3 + inPos] & 7L) << 1)
| // [_654____]
// [210]
((in[ 4 + inPos] & 7L) << 4)
| // [7_______]
// [__0]
((in[ 5 + inPos] & 7L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [21_]
((in[ 5 + inPos] & 7L) >>> 1)
| // [___432__]
// [210]
((in[ 6 + inPos] & 7L) << 2)
| // [765_____]
// [210]
((in[ 7 + inPos] & 7L) << 5)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_____210]
// [210]
((in[ 0 + inPos] & 7L))
| // [__543___]
// [210]
((in[ 1 + inPos] & 7L) << 3)
| // [76______]
// [_10]
((in[ 2 + inPos] & 7L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [_______0]
// [2__]
((in[ 2 + inPos] & 7L) >>> 2)
| // [____321_]
// [210]
((in[ 3 + inPos] & 7L) << 1)
| // [_654____]
// [210]
((in[ 4 + inPos] & 7L) << 4)
| // [7_______]
// [__0]
((in[ 5 + inPos] & 7L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [21_]
((in[ 5 + inPos] & 7L) >>> 1)
| // [___432__]
// [210]
((in[ 6 + inPos] & 7L) << 2)
| // [765_____]
// [210]
((in[ 7 + inPos] & 7L) << 5)) & 255);
out[ 3 + outPos] = (byte)((
// [_____210]
// [210]
((in[ 8 + inPos] & 7L))
| // [__543___]
// [210]
((in[ 9 + inPos] & 7L) << 3)
| // [76______]
// [_10]
((in[10 + inPos] & 7L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [_______0]
// [2__]
((in[10 + inPos] & 7L) >>> 2)
| // [____321_]
// [210]
((in[11 + inPos] & 7L) << 1)
| // [_654____]
// [210]
((in[12 + inPos] & 7L) << 4)
| // [7_______]
// [__0]
((in[13 + inPos] & 7L) << 7)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [21_]
((in[13 + inPos] & 7L) >>> 1)
| // [___432__]
// [210]
((in[14 + inPos] & 7L) << 2)
| // [765_____]
// [210]
((in[15 + inPos] & 7L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [_____210]
// [210]
((in[16 + inPos] & 7L))
| // [__543___]
// [210]
((in[17 + inPos] & 7L) << 3)
| // [76______]
// [_10]
((in[18 + inPos] & 7L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [_______0]
// [2__]
((in[18 + inPos] & 7L) >>> 2)
| // [____321_]
// [210]
((in[19 + inPos] & 7L) << 1)
| // [_654____]
// [210]
((in[20 + inPos] & 7L) << 4)
| // [7_______]
// [__0]
((in[21 + inPos] & 7L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [21_]
((in[21 + inPos] & 7L) >>> 1)
| // [___432__]
// [210]
((in[22 + inPos] & 7L) << 2)
| // [765_____]
// [210]
((in[23 + inPos] & 7L) << 5)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [210]
((in[24 + inPos] & 7L))
| // [__543___]
// [210]
((in[25 + inPos] & 7L) << 3)
| // [76______]
// [_10]
((in[26 + inPos] & 7L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [_______0]
// [2__]
((in[26 + inPos] & 7L) >>> 2)
| // [____321_]
// [210]
((in[27 + inPos] & 7L) << 1)
| // [_654____]
// [210]
((in[28 + inPos] & 7L) << 4)
| // [7_______]
// [__0]
((in[29 + inPos] & 7L) << 7)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [21_]
((in[29 + inPos] & 7L) >>> 1)
| // [___432__]
// [210]
((in[30 + inPos] & 7L) << 2)
| // [765_____]
// [210]
((in[31 + inPos] & 7L) << 5)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_____210]
// [210]
((((long)in[ 0 + inPos]) ) & 7L);
out[ 1 + outPos] =
// [__543___]
// [210]
((((long)in[ 0 + inPos]) >> 3) & 7L);
out[ 2 + outPos] =
// [76______]
// [_10]
((((long)in[ 0 + inPos]) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in[ 1 + inPos]) << 2) & 7L);
out[ 3 + outPos] =
// [____321_]
// [210]
((((long)in[ 1 + inPos]) >> 1) & 7L);
out[ 4 + outPos] =
// [_654____]
// [210]
((((long)in[ 1 + inPos]) >> 4) & 7L);
out[ 5 + outPos] =
// [7_______]
// [__0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in[ 2 + inPos]) << 1) & 7L);
out[ 6 + outPos] =
// [___432__]
// [210]
((((long)in[ 2 + inPos]) >> 2) & 7L);
out[ 7 + outPos] =
// [765_____]
// [210]
((((long)in[ 2 + inPos]) >> 5) & 7L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_____210]
// [210]
((((long)in.get( 0 + inPos)) ) & 7L);
out[ 1 + outPos] =
// [__543___]
// [210]
((((long)in.get( 0 + inPos)) >> 3) & 7L);
out[ 2 + outPos] =
// [76______]
// [_10]
((((long)in.get( 0 + inPos)) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in.get( 1 + inPos)) << 2) & 7L);
out[ 3 + outPos] =
// [____321_]
// [210]
((((long)in.get( 1 + inPos)) >> 1) & 7L);
out[ 4 + outPos] =
// [_654____]
// [210]
((((long)in.get( 1 + inPos)) >> 4) & 7L);
out[ 5 + outPos] =
// [7_______]
// [__0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in.get( 2 + inPos)) << 1) & 7L);
out[ 6 + outPos] =
// [___432__]
// [210]
((((long)in.get( 2 + inPos)) >> 2) & 7L);
out[ 7 + outPos] =
// [765_____]
// [210]
((((long)in.get( 2 + inPos)) >> 5) & 7L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_____210]
// [210]
((((long)in[ 0 + inPos]) ) & 7L);
out[ 1 + outPos] =
// [__543___]
// [210]
((((long)in[ 0 + inPos]) >> 3) & 7L);
out[ 2 + outPos] =
// [76______]
// [_10]
((((long)in[ 0 + inPos]) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in[ 1 + inPos]) << 2) & 7L);
out[ 3 + outPos] =
// [____321_]
// [210]
((((long)in[ 1 + inPos]) >> 1) & 7L);
out[ 4 + outPos] =
// [_654____]
// [210]
((((long)in[ 1 + inPos]) >> 4) & 7L);
out[ 5 + outPos] =
// [7_______]
// [__0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in[ 2 + inPos]) << 1) & 7L);
out[ 6 + outPos] =
// [___432__]
// [210]
((((long)in[ 2 + inPos]) >> 2) & 7L);
out[ 7 + outPos] =
// [765_____]
// [210]
((((long)in[ 2 + inPos]) >> 5) & 7L);
out[ 8 + outPos] =
// [_____210]
// [210]
((((long)in[ 3 + inPos]) ) & 7L);
out[ 9 + outPos] =
// [__543___]
// [210]
((((long)in[ 3 + inPos]) >> 3) & 7L);
out[10 + outPos] =
// [76______]
// [_10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in[ 4 + inPos]) << 2) & 7L);
out[11 + outPos] =
// [____321_]
// [210]
((((long)in[ 4 + inPos]) >> 1) & 7L);
out[12 + outPos] =
// [_654____]
// [210]
((((long)in[ 4 + inPos]) >> 4) & 7L);
out[13 + outPos] =
// [7_______]
// [__0]
((((long)in[ 4 + inPos]) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in[ 5 + inPos]) << 1) & 7L);
out[14 + outPos] =
// [___432__]
// [210]
((((long)in[ 5 + inPos]) >> 2) & 7L);
out[15 + outPos] =
// [765_____]
// [210]
((((long)in[ 5 + inPos]) >> 5) & 7L);
out[16 + outPos] =
// [_____210]
// [210]
((((long)in[ 6 + inPos]) ) & 7L);
out[17 + outPos] =
// [__543___]
// [210]
((((long)in[ 6 + inPos]) >> 3) & 7L);
out[18 + outPos] =
// [76______]
// [_10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in[ 7 + inPos]) << 2) & 7L);
out[19 + outPos] =
// [____321_]
// [210]
((((long)in[ 7 + inPos]) >> 1) & 7L);
out[20 + outPos] =
// [_654____]
// [210]
((((long)in[ 7 + inPos]) >> 4) & 7L);
out[21 + outPos] =
// [7_______]
// [__0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in[ 8 + inPos]) << 1) & 7L);
out[22 + outPos] =
// [___432__]
// [210]
((((long)in[ 8 + inPos]) >> 2) & 7L);
out[23 + outPos] =
// [765_____]
// [210]
((((long)in[ 8 + inPos]) >> 5) & 7L);
out[24 + outPos] =
// [_____210]
// [210]
((((long)in[ 9 + inPos]) ) & 7L);
out[25 + outPos] =
// [__543___]
// [210]
((((long)in[ 9 + inPos]) >> 3) & 7L);
out[26 + outPos] =
// [76______]
// [_10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in[10 + inPos]) << 2) & 7L);
out[27 + outPos] =
// [____321_]
// [210]
((((long)in[10 + inPos]) >> 1) & 7L);
out[28 + outPos] =
// [_654____]
// [210]
((((long)in[10 + inPos]) >> 4) & 7L);
out[29 + outPos] =
// [7_______]
// [__0]
((((long)in[10 + inPos]) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in[11 + inPos]) << 1) & 7L);
out[30 + outPos] =
// [___432__]
// [210]
((((long)in[11 + inPos]) >> 2) & 7L);
out[31 + outPos] =
// [765_____]
// [210]
((((long)in[11 + inPos]) >> 5) & 7L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_____210]
// [210]
((((long)in.get( 0 + inPos)) ) & 7L);
out[ 1 + outPos] =
// [__543___]
// [210]
((((long)in.get( 0 + inPos)) >> 3) & 7L);
out[ 2 + outPos] =
// [76______]
// [_10]
((((long)in.get( 0 + inPos)) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in.get( 1 + inPos)) << 2) & 7L);
out[ 3 + outPos] =
// [____321_]
// [210]
((((long)in.get( 1 + inPos)) >> 1) & 7L);
out[ 4 + outPos] =
// [_654____]
// [210]
((((long)in.get( 1 + inPos)) >> 4) & 7L);
out[ 5 + outPos] =
// [7_______]
// [__0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in.get( 2 + inPos)) << 1) & 7L);
out[ 6 + outPos] =
// [___432__]
// [210]
((((long)in.get( 2 + inPos)) >> 2) & 7L);
out[ 7 + outPos] =
// [765_____]
// [210]
((((long)in.get( 2 + inPos)) >> 5) & 7L);
out[ 8 + outPos] =
// [_____210]
// [210]
((((long)in.get( 3 + inPos)) ) & 7L);
out[ 9 + outPos] =
// [__543___]
// [210]
((((long)in.get( 3 + inPos)) >> 3) & 7L);
out[10 + outPos] =
// [76______]
// [_10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in.get( 4 + inPos)) << 2) & 7L);
out[11 + outPos] =
// [____321_]
// [210]
((((long)in.get( 4 + inPos)) >> 1) & 7L);
out[12 + outPos] =
// [_654____]
// [210]
((((long)in.get( 4 + inPos)) >> 4) & 7L);
out[13 + outPos] =
// [7_______]
// [__0]
((((long)in.get( 4 + inPos)) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in.get( 5 + inPos)) << 1) & 7L);
out[14 + outPos] =
// [___432__]
// [210]
((((long)in.get( 5 + inPos)) >> 2) & 7L);
out[15 + outPos] =
// [765_____]
// [210]
((((long)in.get( 5 + inPos)) >> 5) & 7L);
out[16 + outPos] =
// [_____210]
// [210]
((((long)in.get( 6 + inPos)) ) & 7L);
out[17 + outPos] =
// [__543___]
// [210]
((((long)in.get( 6 + inPos)) >> 3) & 7L);
out[18 + outPos] =
// [76______]
// [_10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in.get( 7 + inPos)) << 2) & 7L);
out[19 + outPos] =
// [____321_]
// [210]
((((long)in.get( 7 + inPos)) >> 1) & 7L);
out[20 + outPos] =
// [_654____]
// [210]
((((long)in.get( 7 + inPos)) >> 4) & 7L);
out[21 + outPos] =
// [7_______]
// [__0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in.get( 8 + inPos)) << 1) & 7L);
out[22 + outPos] =
// [___432__]
// [210]
((((long)in.get( 8 + inPos)) >> 2) & 7L);
out[23 + outPos] =
// [765_____]
// [210]
((((long)in.get( 8 + inPos)) >> 5) & 7L);
out[24 + outPos] =
// [_____210]
// [210]
((((long)in.get( 9 + inPos)) ) & 7L);
out[25 + outPos] =
// [__543___]
// [210]
((((long)in.get( 9 + inPos)) >> 3) & 7L);
out[26 + outPos] =
// [76______]
// [_10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [_______0]
// [2__]
((((long)in.get(10 + inPos)) << 2) & 7L);
out[27 + outPos] =
// [____321_]
// [210]
((((long)in.get(10 + inPos)) >> 1) & 7L);
out[28 + outPos] =
// [_654____]
// [210]
((((long)in.get(10 + inPos)) >> 4) & 7L);
out[29 + outPos] =
// [7_______]
// [__0]
((((long)in.get(10 + inPos)) >> 7) & 1L)
| // [______10]
// [21_]
((((long)in.get(11 + inPos)) << 1) & 7L);
out[30 + outPos] =
// [___432__]
// [210]
((((long)in.get(11 + inPos)) >> 2) & 7L);
out[31 + outPos] =
// [765_____]
// [210]
((((long)in.get(11 + inPos)) >> 5) & 7L);
}
}
private static final class Packer4 extends BytePackerForLong {
private Packer4() {
super(4);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 0 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 1 + inPos] & 15L) << 4)) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 2 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 3 + inPos] & 15L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 4 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 5 + inPos] & 15L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 6 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 7 + inPos] & 15L) << 4)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 0 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 1 + inPos] & 15L) << 4)) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 2 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 3 + inPos] & 15L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 4 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 5 + inPos] & 15L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 6 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 7 + inPos] & 15L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [3210]
((in[ 8 + inPos] & 15L))
| // [7654____]
// [3210]
((in[ 9 + inPos] & 15L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [3210]
((in[10 + inPos] & 15L))
| // [7654____]
// [3210]
((in[11 + inPos] & 15L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [3210]
((in[12 + inPos] & 15L))
| // [7654____]
// [3210]
((in[13 + inPos] & 15L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [3210]
((in[14 + inPos] & 15L))
| // [7654____]
// [3210]
((in[15 + inPos] & 15L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [____3210]
// [3210]
((in[16 + inPos] & 15L))
| // [7654____]
// [3210]
((in[17 + inPos] & 15L) << 4)) & 255);
out[ 9 + outPos] = (byte)((
// [____3210]
// [3210]
((in[18 + inPos] & 15L))
| // [7654____]
// [3210]
((in[19 + inPos] & 15L) << 4)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [3210]
((in[20 + inPos] & 15L))
| // [7654____]
// [3210]
((in[21 + inPos] & 15L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [____3210]
// [3210]
((in[22 + inPos] & 15L))
| // [7654____]
// [3210]
((in[23 + inPos] & 15L) << 4)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [3210]
((in[24 + inPos] & 15L))
| // [7654____]
// [3210]
((in[25 + inPos] & 15L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [3210]
((in[26 + inPos] & 15L))
| // [7654____]
// [3210]
((in[27 + inPos] & 15L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [____3210]
// [3210]
((in[28 + inPos] & 15L))
| // [7654____]
// [3210]
((in[29 + inPos] & 15L) << 4)) & 255);
out[15 + outPos] = (byte)((
// [____3210]
// [3210]
((in[30 + inPos] & 15L))
| // [7654____]
// [3210]
((in[31 + inPos] & 15L) << 4)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [____3210]
// [3210]
((((long)in[ 0 + inPos]) ) & 15L);
out[ 1 + outPos] =
// [7654____]
// [3210]
((((long)in[ 0 + inPos]) >> 4) & 15L);
out[ 2 + outPos] =
// [____3210]
// [3210]
((((long)in[ 1 + inPos]) ) & 15L);
out[ 3 + outPos] =
// [7654____]
// [3210]
((((long)in[ 1 + inPos]) >> 4) & 15L);
out[ 4 + outPos] =
// [____3210]
// [3210]
((((long)in[ 2 + inPos]) ) & 15L);
out[ 5 + outPos] =
// [7654____]
// [3210]
((((long)in[ 2 + inPos]) >> 4) & 15L);
out[ 6 + outPos] =
// [____3210]
// [3210]
((((long)in[ 3 + inPos]) ) & 15L);
out[ 7 + outPos] =
// [7654____]
// [3210]
((((long)in[ 3 + inPos]) >> 4) & 15L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 0 + inPos)) ) & 15L);
out[ 1 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 0 + inPos)) >> 4) & 15L);
out[ 2 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 1 + inPos)) ) & 15L);
out[ 3 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L);
out[ 4 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 2 + inPos)) ) & 15L);
out[ 5 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L);
out[ 6 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 3 + inPos)) ) & 15L);
out[ 7 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [____3210]
// [3210]
((((long)in[ 0 + inPos]) ) & 15L);
out[ 1 + outPos] =
// [7654____]
// [3210]
((((long)in[ 0 + inPos]) >> 4) & 15L);
out[ 2 + outPos] =
// [____3210]
// [3210]
((((long)in[ 1 + inPos]) ) & 15L);
out[ 3 + outPos] =
// [7654____]
// [3210]
((((long)in[ 1 + inPos]) >> 4) & 15L);
out[ 4 + outPos] =
// [____3210]
// [3210]
((((long)in[ 2 + inPos]) ) & 15L);
out[ 5 + outPos] =
// [7654____]
// [3210]
((((long)in[ 2 + inPos]) >> 4) & 15L);
out[ 6 + outPos] =
// [____3210]
// [3210]
((((long)in[ 3 + inPos]) ) & 15L);
out[ 7 + outPos] =
// [7654____]
// [3210]
((((long)in[ 3 + inPos]) >> 4) & 15L);
out[ 8 + outPos] =
// [____3210]
// [3210]
((((long)in[ 4 + inPos]) ) & 15L);
out[ 9 + outPos] =
// [7654____]
// [3210]
((((long)in[ 4 + inPos]) >> 4) & 15L);
out[10 + outPos] =
// [____3210]
// [3210]
((((long)in[ 5 + inPos]) ) & 15L);
out[11 + outPos] =
// [7654____]
// [3210]
((((long)in[ 5 + inPos]) >> 4) & 15L);
out[12 + outPos] =
// [____3210]
// [3210]
((((long)in[ 6 + inPos]) ) & 15L);
out[13 + outPos] =
// [7654____]
// [3210]
((((long)in[ 6 + inPos]) >> 4) & 15L);
out[14 + outPos] =
// [____3210]
// [3210]
((((long)in[ 7 + inPos]) ) & 15L);
out[15 + outPos] =
// [7654____]
// [3210]
((((long)in[ 7 + inPos]) >> 4) & 15L);
out[16 + outPos] =
// [____3210]
// [3210]
((((long)in[ 8 + inPos]) ) & 15L);
out[17 + outPos] =
// [7654____]
// [3210]
((((long)in[ 8 + inPos]) >> 4) & 15L);
out[18 + outPos] =
// [____3210]
// [3210]
((((long)in[ 9 + inPos]) ) & 15L);
out[19 + outPos] =
// [7654____]
// [3210]
((((long)in[ 9 + inPos]) >> 4) & 15L);
out[20 + outPos] =
// [____3210]
// [3210]
((((long)in[10 + inPos]) ) & 15L);
out[21 + outPos] =
// [7654____]
// [3210]
((((long)in[10 + inPos]) >> 4) & 15L);
out[22 + outPos] =
// [____3210]
// [3210]
((((long)in[11 + inPos]) ) & 15L);
out[23 + outPos] =
// [7654____]
// [3210]
((((long)in[11 + inPos]) >> 4) & 15L);
out[24 + outPos] =
// [____3210]
// [3210]
((((long)in[12 + inPos]) ) & 15L);
out[25 + outPos] =
// [7654____]
// [3210]
((((long)in[12 + inPos]) >> 4) & 15L);
out[26 + outPos] =
// [____3210]
// [3210]
((((long)in[13 + inPos]) ) & 15L);
out[27 + outPos] =
// [7654____]
// [3210]
((((long)in[13 + inPos]) >> 4) & 15L);
out[28 + outPos] =
// [____3210]
// [3210]
((((long)in[14 + inPos]) ) & 15L);
out[29 + outPos] =
// [7654____]
// [3210]
((((long)in[14 + inPos]) >> 4) & 15L);
out[30 + outPos] =
// [____3210]
// [3210]
((((long)in[15 + inPos]) ) & 15L);
out[31 + outPos] =
// [7654____]
// [3210]
((((long)in[15 + inPos]) >> 4) & 15L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 0 + inPos)) ) & 15L);
out[ 1 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 0 + inPos)) >> 4) & 15L);
out[ 2 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 1 + inPos)) ) & 15L);
out[ 3 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L);
out[ 4 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 2 + inPos)) ) & 15L);
out[ 5 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L);
out[ 6 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 3 + inPos)) ) & 15L);
out[ 7 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L);
out[ 8 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 4 + inPos)) ) & 15L);
out[ 9 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L);
out[10 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 5 + inPos)) ) & 15L);
out[11 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L);
out[12 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 6 + inPos)) ) & 15L);
out[13 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L);
out[14 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 7 + inPos)) ) & 15L);
out[15 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L);
out[16 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 8 + inPos)) ) & 15L);
out[17 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 8 + inPos)) >> 4) & 15L);
out[18 + outPos] =
// [____3210]
// [3210]
((((long)in.get( 9 + inPos)) ) & 15L);
out[19 + outPos] =
// [7654____]
// [3210]
((((long)in.get( 9 + inPos)) >> 4) & 15L);
out[20 + outPos] =
// [____3210]
// [3210]
((((long)in.get(10 + inPos)) ) & 15L);
out[21 + outPos] =
// [7654____]
// [3210]
((((long)in.get(10 + inPos)) >> 4) & 15L);
out[22 + outPos] =
// [____3210]
// [3210]
((((long)in.get(11 + inPos)) ) & 15L);
out[23 + outPos] =
// [7654____]
// [3210]
((((long)in.get(11 + inPos)) >> 4) & 15L);
out[24 + outPos] =
// [____3210]
// [3210]
((((long)in.get(12 + inPos)) ) & 15L);
out[25 + outPos] =
// [7654____]
// [3210]
((((long)in.get(12 + inPos)) >> 4) & 15L);
out[26 + outPos] =
// [____3210]
// [3210]
((((long)in.get(13 + inPos)) ) & 15L);
out[27 + outPos] =
// [7654____]
// [3210]
((((long)in.get(13 + inPos)) >> 4) & 15L);
out[28 + outPos] =
// [____3210]
// [3210]
((((long)in.get(14 + inPos)) ) & 15L);
out[29 + outPos] =
// [7654____]
// [3210]
((((long)in.get(14 + inPos)) >> 4) & 15L);
out[30 + outPos] =
// [____3210]
// [3210]
((((long)in.get(15 + inPos)) ) & 15L);
out[31 + outPos] =
// [7654____]
// [3210]
((((long)in.get(15 + inPos)) >> 4) & 15L);
}
}
private static final class Packer5 extends BytePackerForLong {
private Packer5() {
super(5);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [___43210]
// [43210]
((in[ 0 + inPos] & 31L))
| // [765_____]
// [__210]
((in[ 1 + inPos] & 31L) << 5)) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [43___]
((in[ 1 + inPos] & 31L) >>> 3)
| // [_65432__]
// [43210]
((in[ 2 + inPos] & 31L) << 2)
| // [7_______]
// [____0]
((in[ 3 + inPos] & 31L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [4321_]
((in[ 3 + inPos] & 31L) >>> 1)
| // [7654____]
// [_3210]
((in[ 4 + inPos] & 31L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [_______0]
// [4____]
((in[ 4 + inPos] & 31L) >>> 4)
| // [__54321_]
// [43210]
((in[ 5 + inPos] & 31L) << 1)
| // [76______]
// [___10]
((in[ 6 + inPos] & 31L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [432__]
((in[ 6 + inPos] & 31L) >>> 2)
| // [76543___]
// [43210]
((in[ 7 + inPos] & 31L) << 3)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [___43210]
// [43210]
((in[ 0 + inPos] & 31L))
| // [765_____]
// [__210]
((in[ 1 + inPos] & 31L) << 5)) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [43___]
((in[ 1 + inPos] & 31L) >>> 3)
| // [_65432__]
// [43210]
((in[ 2 + inPos] & 31L) << 2)
| // [7_______]
// [____0]
((in[ 3 + inPos] & 31L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [4321_]
((in[ 3 + inPos] & 31L) >>> 1)
| // [7654____]
// [_3210]
((in[ 4 + inPos] & 31L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [_______0]
// [4____]
((in[ 4 + inPos] & 31L) >>> 4)
| // [__54321_]
// [43210]
((in[ 5 + inPos] & 31L) << 1)
| // [76______]
// [___10]
((in[ 6 + inPos] & 31L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [432__]
((in[ 6 + inPos] & 31L) >>> 2)
| // [76543___]
// [43210]
((in[ 7 + inPos] & 31L) << 3)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [43210]
((in[ 8 + inPos] & 31L))
| // [765_____]
// [__210]
((in[ 9 + inPos] & 31L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [43___]
((in[ 9 + inPos] & 31L) >>> 3)
| // [_65432__]
// [43210]
((in[10 + inPos] & 31L) << 2)
| // [7_______]
// [____0]
((in[11 + inPos] & 31L) << 7)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [4321_]
((in[11 + inPos] & 31L) >>> 1)
| // [7654____]
// [_3210]
((in[12 + inPos] & 31L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [_______0]
// [4____]
((in[12 + inPos] & 31L) >>> 4)
| // [__54321_]
// [43210]
((in[13 + inPos] & 31L) << 1)
| // [76______]
// [___10]
((in[14 + inPos] & 31L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [432__]
((in[14 + inPos] & 31L) >>> 2)
| // [76543___]
// [43210]
((in[15 + inPos] & 31L) << 3)) & 255);
out[10 + outPos] = (byte)((
// [___43210]
// [43210]
((in[16 + inPos] & 31L))
| // [765_____]
// [__210]
((in[17 + inPos] & 31L) << 5)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [43___]
((in[17 + inPos] & 31L) >>> 3)
| // [_65432__]
// [43210]
((in[18 + inPos] & 31L) << 2)
| // [7_______]
// [____0]
((in[19 + inPos] & 31L) << 7)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [4321_]
((in[19 + inPos] & 31L) >>> 1)
| // [7654____]
// [_3210]
((in[20 + inPos] & 31L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [4____]
((in[20 + inPos] & 31L) >>> 4)
| // [__54321_]
// [43210]
((in[21 + inPos] & 31L) << 1)
| // [76______]
// [___10]
((in[22 + inPos] & 31L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [_____210]
// [432__]
((in[22 + inPos] & 31L) >>> 2)
| // [76543___]
// [43210]
((in[23 + inPos] & 31L) << 3)) & 255);
out[15 + outPos] = (byte)((
// [___43210]
// [43210]
((in[24 + inPos] & 31L))
| // [765_____]
// [__210]
((in[25 + inPos] & 31L) << 5)) & 255);
out[16 + outPos] = (byte)((
// [______10]
// [43___]
((in[25 + inPos] & 31L) >>> 3)
| // [_65432__]
// [43210]
((in[26 + inPos] & 31L) << 2)
| // [7_______]
// [____0]
((in[27 + inPos] & 31L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [4321_]
((in[27 + inPos] & 31L) >>> 1)
| // [7654____]
// [_3210]
((in[28 + inPos] & 31L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [_______0]
// [4____]
((in[28 + inPos] & 31L) >>> 4)
| // [__54321_]
// [43210]
((in[29 + inPos] & 31L) << 1)
| // [76______]
// [___10]
((in[30 + inPos] & 31L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [_____210]
// [432__]
((in[30 + inPos] & 31L) >>> 2)
| // [76543___]
// [43210]
((in[31 + inPos] & 31L) << 3)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [___43210]
// [43210]
((((long)in[ 0 + inPos]) ) & 31L);
out[ 1 + outPos] =
// [765_____]
// [__210]
((((long)in[ 0 + inPos]) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in[ 1 + inPos]) << 3) & 31L);
out[ 2 + outPos] =
// [_65432__]
// [43210]
((((long)in[ 1 + inPos]) >> 2) & 31L);
out[ 3 + outPos] =
// [7_______]
// [____0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in[ 2 + inPos]) << 1) & 31L);
out[ 4 + outPos] =
// [7654____]
// [_3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in[ 3 + inPos]) << 4) & 31L);
out[ 5 + outPos] =
// [__54321_]
// [43210]
((((long)in[ 3 + inPos]) >> 1) & 31L);
out[ 6 + outPos] =
// [76______]
// [___10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in[ 4 + inPos]) << 2) & 31L);
out[ 7 + outPos] =
// [76543___]
// [43210]
((((long)in[ 4 + inPos]) >> 3) & 31L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [___43210]
// [43210]
((((long)in.get( 0 + inPos)) ) & 31L);
out[ 1 + outPos] =
// [765_____]
// [__210]
((((long)in.get( 0 + inPos)) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in.get( 1 + inPos)) << 3) & 31L);
out[ 2 + outPos] =
// [_65432__]
// [43210]
((((long)in.get( 1 + inPos)) >> 2) & 31L);
out[ 3 + outPos] =
// [7_______]
// [____0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in.get( 2 + inPos)) << 1) & 31L);
out[ 4 + outPos] =
// [7654____]
// [_3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in.get( 3 + inPos)) << 4) & 31L);
out[ 5 + outPos] =
// [__54321_]
// [43210]
((((long)in.get( 3 + inPos)) >> 1) & 31L);
out[ 6 + outPos] =
// [76______]
// [___10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in.get( 4 + inPos)) << 2) & 31L);
out[ 7 + outPos] =
// [76543___]
// [43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [___43210]
// [43210]
((((long)in[ 0 + inPos]) ) & 31L);
out[ 1 + outPos] =
// [765_____]
// [__210]
((((long)in[ 0 + inPos]) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in[ 1 + inPos]) << 3) & 31L);
out[ 2 + outPos] =
// [_65432__]
// [43210]
((((long)in[ 1 + inPos]) >> 2) & 31L);
out[ 3 + outPos] =
// [7_______]
// [____0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in[ 2 + inPos]) << 1) & 31L);
out[ 4 + outPos] =
// [7654____]
// [_3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in[ 3 + inPos]) << 4) & 31L);
out[ 5 + outPos] =
// [__54321_]
// [43210]
((((long)in[ 3 + inPos]) >> 1) & 31L);
out[ 6 + outPos] =
// [76______]
// [___10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in[ 4 + inPos]) << 2) & 31L);
out[ 7 + outPos] =
// [76543___]
// [43210]
((((long)in[ 4 + inPos]) >> 3) & 31L);
out[ 8 + outPos] =
// [___43210]
// [43210]
((((long)in[ 5 + inPos]) ) & 31L);
out[ 9 + outPos] =
// [765_____]
// [__210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in[ 6 + inPos]) << 3) & 31L);
out[10 + outPos] =
// [_65432__]
// [43210]
((((long)in[ 6 + inPos]) >> 2) & 31L);
out[11 + outPos] =
// [7_______]
// [____0]
((((long)in[ 6 + inPos]) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in[ 7 + inPos]) << 1) & 31L);
out[12 + outPos] =
// [7654____]
// [_3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in[ 8 + inPos]) << 4) & 31L);
out[13 + outPos] =
// [__54321_]
// [43210]
((((long)in[ 8 + inPos]) >> 1) & 31L);
out[14 + outPos] =
// [76______]
// [___10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in[ 9 + inPos]) << 2) & 31L);
out[15 + outPos] =
// [76543___]
// [43210]
((((long)in[ 9 + inPos]) >> 3) & 31L);
out[16 + outPos] =
// [___43210]
// [43210]
((((long)in[10 + inPos]) ) & 31L);
out[17 + outPos] =
// [765_____]
// [__210]
((((long)in[10 + inPos]) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in[11 + inPos]) << 3) & 31L);
out[18 + outPos] =
// [_65432__]
// [43210]
((((long)in[11 + inPos]) >> 2) & 31L);
out[19 + outPos] =
// [7_______]
// [____0]
((((long)in[11 + inPos]) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in[12 + inPos]) << 1) & 31L);
out[20 + outPos] =
// [7654____]
// [_3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in[13 + inPos]) << 4) & 31L);
out[21 + outPos] =
// [__54321_]
// [43210]
((((long)in[13 + inPos]) >> 1) & 31L);
out[22 + outPos] =
// [76______]
// [___10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in[14 + inPos]) << 2) & 31L);
out[23 + outPos] =
// [76543___]
// [43210]
((((long)in[14 + inPos]) >> 3) & 31L);
out[24 + outPos] =
// [___43210]
// [43210]
((((long)in[15 + inPos]) ) & 31L);
out[25 + outPos] =
// [765_____]
// [__210]
((((long)in[15 + inPos]) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in[16 + inPos]) << 3) & 31L);
out[26 + outPos] =
// [_65432__]
// [43210]
((((long)in[16 + inPos]) >> 2) & 31L);
out[27 + outPos] =
// [7_______]
// [____0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in[17 + inPos]) << 1) & 31L);
out[28 + outPos] =
// [7654____]
// [_3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in[18 + inPos]) << 4) & 31L);
out[29 + outPos] =
// [__54321_]
// [43210]
((((long)in[18 + inPos]) >> 1) & 31L);
out[30 + outPos] =
// [76______]
// [___10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in[19 + inPos]) << 2) & 31L);
out[31 + outPos] =
// [76543___]
// [43210]
((((long)in[19 + inPos]) >> 3) & 31L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [___43210]
// [43210]
((((long)in.get( 0 + inPos)) ) & 31L);
out[ 1 + outPos] =
// [765_____]
// [__210]
((((long)in.get( 0 + inPos)) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in.get( 1 + inPos)) << 3) & 31L);
out[ 2 + outPos] =
// [_65432__]
// [43210]
((((long)in.get( 1 + inPos)) >> 2) & 31L);
out[ 3 + outPos] =
// [7_______]
// [____0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in.get( 2 + inPos)) << 1) & 31L);
out[ 4 + outPos] =
// [7654____]
// [_3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in.get( 3 + inPos)) << 4) & 31L);
out[ 5 + outPos] =
// [__54321_]
// [43210]
((((long)in.get( 3 + inPos)) >> 1) & 31L);
out[ 6 + outPos] =
// [76______]
// [___10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in.get( 4 + inPos)) << 2) & 31L);
out[ 7 + outPos] =
// [76543___]
// [43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L);
out[ 8 + outPos] =
// [___43210]
// [43210]
((((long)in.get( 5 + inPos)) ) & 31L);
out[ 9 + outPos] =
// [765_____]
// [__210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in.get( 6 + inPos)) << 3) & 31L);
out[10 + outPos] =
// [_65432__]
// [43210]
((((long)in.get( 6 + inPos)) >> 2) & 31L);
out[11 + outPos] =
// [7_______]
// [____0]
((((long)in.get( 6 + inPos)) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in.get( 7 + inPos)) << 1) & 31L);
out[12 + outPos] =
// [7654____]
// [_3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in.get( 8 + inPos)) << 4) & 31L);
out[13 + outPos] =
// [__54321_]
// [43210]
((((long)in.get( 8 + inPos)) >> 1) & 31L);
out[14 + outPos] =
// [76______]
// [___10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in.get( 9 + inPos)) << 2) & 31L);
out[15 + outPos] =
// [76543___]
// [43210]
((((long)in.get( 9 + inPos)) >> 3) & 31L);
out[16 + outPos] =
// [___43210]
// [43210]
((((long)in.get(10 + inPos)) ) & 31L);
out[17 + outPos] =
// [765_____]
// [__210]
((((long)in.get(10 + inPos)) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in.get(11 + inPos)) << 3) & 31L);
out[18 + outPos] =
// [_65432__]
// [43210]
((((long)in.get(11 + inPos)) >> 2) & 31L);
out[19 + outPos] =
// [7_______]
// [____0]
((((long)in.get(11 + inPos)) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in.get(12 + inPos)) << 1) & 31L);
out[20 + outPos] =
// [7654____]
// [_3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in.get(13 + inPos)) << 4) & 31L);
out[21 + outPos] =
// [__54321_]
// [43210]
((((long)in.get(13 + inPos)) >> 1) & 31L);
out[22 + outPos] =
// [76______]
// [___10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in.get(14 + inPos)) << 2) & 31L);
out[23 + outPos] =
// [76543___]
// [43210]
((((long)in.get(14 + inPos)) >> 3) & 31L);
out[24 + outPos] =
// [___43210]
// [43210]
((((long)in.get(15 + inPos)) ) & 31L);
out[25 + outPos] =
// [765_____]
// [__210]
((((long)in.get(15 + inPos)) >> 5) & 7L)
| // [______10]
// [43___]
((((long)in.get(16 + inPos)) << 3) & 31L);
out[26 + outPos] =
// [_65432__]
// [43210]
((((long)in.get(16 + inPos)) >> 2) & 31L);
out[27 + outPos] =
// [7_______]
// [____0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [____3210]
// [4321_]
((((long)in.get(17 + inPos)) << 1) & 31L);
out[28 + outPos] =
// [7654____]
// [_3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [_______0]
// [4____]
((((long)in.get(18 + inPos)) << 4) & 31L);
out[29 + outPos] =
// [__54321_]
// [43210]
((((long)in.get(18 + inPos)) >> 1) & 31L);
out[30 + outPos] =
// [76______]
// [___10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [_____210]
// [432__]
((((long)in.get(19 + inPos)) << 2) & 31L);
out[31 + outPos] =
// [76543___]
// [43210]
((((long)in.get(19 + inPos)) >> 3) & 31L);
}
}
private static final class Packer6 extends BytePackerForLong {
private Packer6() {
super(6);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [__543210]
// [543210]
((in[ 0 + inPos] & 63L))
| // [76______]
// [____10]
((in[ 1 + inPos] & 63L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[ 1 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[ 2 + inPos] & 63L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [54____]
((in[ 2 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[ 3 + inPos] & 63L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [543210]
((in[ 4 + inPos] & 63L))
| // [76______]
// [____10]
((in[ 5 + inPos] & 63L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[ 5 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[ 6 + inPos] & 63L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [54____]
((in[ 6 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[ 7 + inPos] & 63L) << 2)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [__543210]
// [543210]
((in[ 0 + inPos] & 63L))
| // [76______]
// [____10]
((in[ 1 + inPos] & 63L) << 6)) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[ 1 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[ 2 + inPos] & 63L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [54____]
((in[ 2 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[ 3 + inPos] & 63L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [543210]
((in[ 4 + inPos] & 63L))
| // [76______]
// [____10]
((in[ 5 + inPos] & 63L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[ 5 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[ 6 + inPos] & 63L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [54____]
((in[ 6 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[ 7 + inPos] & 63L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [543210]
((in[ 8 + inPos] & 63L))
| // [76______]
// [____10]
((in[ 9 + inPos] & 63L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[ 9 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[10 + inPos] & 63L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [54____]
((in[10 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[11 + inPos] & 63L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [543210]
((in[12 + inPos] & 63L))
| // [76______]
// [____10]
((in[13 + inPos] & 63L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[13 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[14 + inPos] & 63L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [54____]
((in[14 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[15 + inPos] & 63L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [543210]
((in[16 + inPos] & 63L))
| // [76______]
// [____10]
((in[17 + inPos] & 63L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[17 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[18 + inPos] & 63L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [54____]
((in[18 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[19 + inPos] & 63L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [543210]
((in[20 + inPos] & 63L))
| // [76______]
// [____10]
((in[21 + inPos] & 63L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[21 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[22 + inPos] & 63L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [______10]
// [54____]
((in[22 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[23 + inPos] & 63L) << 2)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [543210]
((in[24 + inPos] & 63L))
| // [76______]
// [____10]
((in[25 + inPos] & 63L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[25 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[26 + inPos] & 63L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [54____]
((in[26 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[27 + inPos] & 63L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [__543210]
// [543210]
((in[28 + inPos] & 63L))
| // [76______]
// [____10]
((in[29 + inPos] & 63L) << 6)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [5432__]
((in[29 + inPos] & 63L) >>> 2)
| // [7654____]
// [__3210]
((in[30 + inPos] & 63L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [______10]
// [54____]
((in[30 + inPos] & 63L) >>> 4)
| // [765432__]
// [543210]
((in[31 + inPos] & 63L) << 2)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [__543210]
// [543210]
((((long)in[ 0 + inPos]) ) & 63L);
out[ 1 + outPos] =
// [76______]
// [____10]
((((long)in[ 0 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[ 1 + inPos]) << 2) & 63L);
out[ 2 + outPos] =
// [7654____]
// [__3210]
((((long)in[ 1 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[ 2 + inPos]) << 4) & 63L);
out[ 3 + outPos] =
// [765432__]
// [543210]
((((long)in[ 2 + inPos]) >> 2) & 63L);
out[ 4 + outPos] =
// [__543210]
// [543210]
((((long)in[ 3 + inPos]) ) & 63L);
out[ 5 + outPos] =
// [76______]
// [____10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[ 4 + inPos]) << 2) & 63L);
out[ 6 + outPos] =
// [7654____]
// [__3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[ 5 + inPos]) << 4) & 63L);
out[ 7 + outPos] =
// [765432__]
// [543210]
((((long)in[ 5 + inPos]) >> 2) & 63L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 0 + inPos)) ) & 63L);
out[ 1 + outPos] =
// [76______]
// [____10]
((((long)in.get( 0 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get( 1 + inPos)) << 2) & 63L);
out[ 2 + outPos] =
// [7654____]
// [__3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get( 2 + inPos)) << 4) & 63L);
out[ 3 + outPos] =
// [765432__]
// [543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L);
out[ 4 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 3 + inPos)) ) & 63L);
out[ 5 + outPos] =
// [76______]
// [____10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get( 4 + inPos)) << 2) & 63L);
out[ 6 + outPos] =
// [7654____]
// [__3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get( 5 + inPos)) << 4) & 63L);
out[ 7 + outPos] =
// [765432__]
// [543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [__543210]
// [543210]
((((long)in[ 0 + inPos]) ) & 63L);
out[ 1 + outPos] =
// [76______]
// [____10]
((((long)in[ 0 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[ 1 + inPos]) << 2) & 63L);
out[ 2 + outPos] =
// [7654____]
// [__3210]
((((long)in[ 1 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[ 2 + inPos]) << 4) & 63L);
out[ 3 + outPos] =
// [765432__]
// [543210]
((((long)in[ 2 + inPos]) >> 2) & 63L);
out[ 4 + outPos] =
// [__543210]
// [543210]
((((long)in[ 3 + inPos]) ) & 63L);
out[ 5 + outPos] =
// [76______]
// [____10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[ 4 + inPos]) << 2) & 63L);
out[ 6 + outPos] =
// [7654____]
// [__3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[ 5 + inPos]) << 4) & 63L);
out[ 7 + outPos] =
// [765432__]
// [543210]
((((long)in[ 5 + inPos]) >> 2) & 63L);
out[ 8 + outPos] =
// [__543210]
// [543210]
((((long)in[ 6 + inPos]) ) & 63L);
out[ 9 + outPos] =
// [76______]
// [____10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[ 7 + inPos]) << 2) & 63L);
out[10 + outPos] =
// [7654____]
// [__3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[ 8 + inPos]) << 4) & 63L);
out[11 + outPos] =
// [765432__]
// [543210]
((((long)in[ 8 + inPos]) >> 2) & 63L);
out[12 + outPos] =
// [__543210]
// [543210]
((((long)in[ 9 + inPos]) ) & 63L);
out[13 + outPos] =
// [76______]
// [____10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[10 + inPos]) << 2) & 63L);
out[14 + outPos] =
// [7654____]
// [__3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[11 + inPos]) << 4) & 63L);
out[15 + outPos] =
// [765432__]
// [543210]
((((long)in[11 + inPos]) >> 2) & 63L);
out[16 + outPos] =
// [__543210]
// [543210]
((((long)in[12 + inPos]) ) & 63L);
out[17 + outPos] =
// [76______]
// [____10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[13 + inPos]) << 2) & 63L);
out[18 + outPos] =
// [7654____]
// [__3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[14 + inPos]) << 4) & 63L);
out[19 + outPos] =
// [765432__]
// [543210]
((((long)in[14 + inPos]) >> 2) & 63L);
out[20 + outPos] =
// [__543210]
// [543210]
((((long)in[15 + inPos]) ) & 63L);
out[21 + outPos] =
// [76______]
// [____10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[16 + inPos]) << 2) & 63L);
out[22 + outPos] =
// [7654____]
// [__3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[17 + inPos]) << 4) & 63L);
out[23 + outPos] =
// [765432__]
// [543210]
((((long)in[17 + inPos]) >> 2) & 63L);
out[24 + outPos] =
// [__543210]
// [543210]
((((long)in[18 + inPos]) ) & 63L);
out[25 + outPos] =
// [76______]
// [____10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[19 + inPos]) << 2) & 63L);
out[26 + outPos] =
// [7654____]
// [__3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[20 + inPos]) << 4) & 63L);
out[27 + outPos] =
// [765432__]
// [543210]
((((long)in[20 + inPos]) >> 2) & 63L);
out[28 + outPos] =
// [__543210]
// [543210]
((((long)in[21 + inPos]) ) & 63L);
out[29 + outPos] =
// [76______]
// [____10]
((((long)in[21 + inPos]) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in[22 + inPos]) << 2) & 63L);
out[30 + outPos] =
// [7654____]
// [__3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in[23 + inPos]) << 4) & 63L);
out[31 + outPos] =
// [765432__]
// [543210]
((((long)in[23 + inPos]) >> 2) & 63L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 0 + inPos)) ) & 63L);
out[ 1 + outPos] =
// [76______]
// [____10]
((((long)in.get( 0 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get( 1 + inPos)) << 2) & 63L);
out[ 2 + outPos] =
// [7654____]
// [__3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get( 2 + inPos)) << 4) & 63L);
out[ 3 + outPos] =
// [765432__]
// [543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L);
out[ 4 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 3 + inPos)) ) & 63L);
out[ 5 + outPos] =
// [76______]
// [____10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get( 4 + inPos)) << 2) & 63L);
out[ 6 + outPos] =
// [7654____]
// [__3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get( 5 + inPos)) << 4) & 63L);
out[ 7 + outPos] =
// [765432__]
// [543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L);
out[ 8 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 6 + inPos)) ) & 63L);
out[ 9 + outPos] =
// [76______]
// [____10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get( 7 + inPos)) << 2) & 63L);
out[10 + outPos] =
// [7654____]
// [__3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get( 8 + inPos)) << 4) & 63L);
out[11 + outPos] =
// [765432__]
// [543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L);
out[12 + outPos] =
// [__543210]
// [543210]
((((long)in.get( 9 + inPos)) ) & 63L);
out[13 + outPos] =
// [76______]
// [____10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get(10 + inPos)) << 2) & 63L);
out[14 + outPos] =
// [7654____]
// [__3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get(11 + inPos)) << 4) & 63L);
out[15 + outPos] =
// [765432__]
// [543210]
((((long)in.get(11 + inPos)) >> 2) & 63L);
out[16 + outPos] =
// [__543210]
// [543210]
((((long)in.get(12 + inPos)) ) & 63L);
out[17 + outPos] =
// [76______]
// [____10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get(13 + inPos)) << 2) & 63L);
out[18 + outPos] =
// [7654____]
// [__3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get(14 + inPos)) << 4) & 63L);
out[19 + outPos] =
// [765432__]
// [543210]
((((long)in.get(14 + inPos)) >> 2) & 63L);
out[20 + outPos] =
// [__543210]
// [543210]
((((long)in.get(15 + inPos)) ) & 63L);
out[21 + outPos] =
// [76______]
// [____10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get(16 + inPos)) << 2) & 63L);
out[22 + outPos] =
// [7654____]
// [__3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get(17 + inPos)) << 4) & 63L);
out[23 + outPos] =
// [765432__]
// [543210]
((((long)in.get(17 + inPos)) >> 2) & 63L);
out[24 + outPos] =
// [__543210]
// [543210]
((((long)in.get(18 + inPos)) ) & 63L);
out[25 + outPos] =
// [76______]
// [____10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get(19 + inPos)) << 2) & 63L);
out[26 + outPos] =
// [7654____]
// [__3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get(20 + inPos)) << 4) & 63L);
out[27 + outPos] =
// [765432__]
// [543210]
((((long)in.get(20 + inPos)) >> 2) & 63L);
out[28 + outPos] =
// [__543210]
// [543210]
((((long)in.get(21 + inPos)) ) & 63L);
out[29 + outPos] =
// [76______]
// [____10]
((((long)in.get(21 + inPos)) >> 6) & 3L)
| // [____3210]
// [5432__]
((((long)in.get(22 + inPos)) << 2) & 63L);
out[30 + outPos] =
// [7654____]
// [__3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [______10]
// [54____]
((((long)in.get(23 + inPos)) << 4) & 63L);
out[31 + outPos] =
// [765432__]
// [543210]
((((long)in.get(23 + inPos)) >> 2) & 63L);
}
}
private static final class Packer7 extends BytePackerForLong {
private Packer7() {
super(7);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_6543210]
// [6543210]
((in[ 0 + inPos] & 127L))
| // [7_______]
// [______0]
((in[ 1 + inPos] & 127L) << 7)) & 255);
out[ 1 + outPos] = (byte)((
// [__543210]
// [654321_]
((in[ 1 + inPos] & 127L) >>> 1)
| // [76______]
// [_____10]
((in[ 2 + inPos] & 127L) << 6)) & 255);
out[ 2 + outPos] = (byte)((
// [___43210]
// [65432__]
((in[ 2 + inPos] & 127L) >>> 2)
| // [765_____]
// [____210]
((in[ 3 + inPos] & 127L) << 5)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [6543___]
((in[ 3 + inPos] & 127L) >>> 3)
| // [7654____]
// [___3210]
((in[ 4 + inPos] & 127L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [654____]
((in[ 4 + inPos] & 127L) >>> 4)
| // [76543___]
// [__43210]
((in[ 5 + inPos] & 127L) << 3)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [65_____]
((in[ 5 + inPos] & 127L) >>> 5)
| // [765432__]
// [_543210]
((in[ 6 + inPos] & 127L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [_______0]
// [6______]
((in[ 6 + inPos] & 127L) >>> 6)
| // [7654321_]
// [6543210]
((in[ 7 + inPos] & 127L) << 1)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [_6543210]
// [6543210]
((in[ 0 + inPos] & 127L))
| // [7_______]
// [______0]
((in[ 1 + inPos] & 127L) << 7)) & 255);
out[ 1 + outPos] = (byte)((
// [__543210]
// [654321_]
((in[ 1 + inPos] & 127L) >>> 1)
| // [76______]
// [_____10]
((in[ 2 + inPos] & 127L) << 6)) & 255);
out[ 2 + outPos] = (byte)((
// [___43210]
// [65432__]
((in[ 2 + inPos] & 127L) >>> 2)
| // [765_____]
// [____210]
((in[ 3 + inPos] & 127L) << 5)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [6543___]
((in[ 3 + inPos] & 127L) >>> 3)
| // [7654____]
// [___3210]
((in[ 4 + inPos] & 127L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [654____]
((in[ 4 + inPos] & 127L) >>> 4)
| // [76543___]
// [__43210]
((in[ 5 + inPos] & 127L) << 3)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [65_____]
((in[ 5 + inPos] & 127L) >>> 5)
| // [765432__]
// [_543210]
((in[ 6 + inPos] & 127L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [_______0]
// [6______]
((in[ 6 + inPos] & 127L) >>> 6)
| // [7654321_]
// [6543210]
((in[ 7 + inPos] & 127L) << 1)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [6543210]
((in[ 8 + inPos] & 127L))
| // [7_______]
// [______0]
((in[ 9 + inPos] & 127L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [654321_]
((in[ 9 + inPos] & 127L) >>> 1)
| // [76______]
// [_____10]
((in[10 + inPos] & 127L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [___43210]
// [65432__]
((in[10 + inPos] & 127L) >>> 2)
| // [765_____]
// [____210]
((in[11 + inPos] & 127L) << 5)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [6543___]
((in[11 + inPos] & 127L) >>> 3)
| // [7654____]
// [___3210]
((in[12 + inPos] & 127L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [_____210]
// [654____]
((in[12 + inPos] & 127L) >>> 4)
| // [76543___]
// [__43210]
((in[13 + inPos] & 127L) << 3)) & 255);
out[12 + outPos] = (byte)((
// [______10]
// [65_____]
((in[13 + inPos] & 127L) >>> 5)
| // [765432__]
// [_543210]
((in[14 + inPos] & 127L) << 2)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [6______]
((in[14 + inPos] & 127L) >>> 6)
| // [7654321_]
// [6543210]
((in[15 + inPos] & 127L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [_6543210]
// [6543210]
((in[16 + inPos] & 127L))
| // [7_______]
// [______0]
((in[17 + inPos] & 127L) << 7)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [654321_]
((in[17 + inPos] & 127L) >>> 1)
| // [76______]
// [_____10]
((in[18 + inPos] & 127L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [___43210]
// [65432__]
((in[18 + inPos] & 127L) >>> 2)
| // [765_____]
// [____210]
((in[19 + inPos] & 127L) << 5)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [6543___]
((in[19 + inPos] & 127L) >>> 3)
| // [7654____]
// [___3210]
((in[20 + inPos] & 127L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [_____210]
// [654____]
((in[20 + inPos] & 127L) >>> 4)
| // [76543___]
// [__43210]
((in[21 + inPos] & 127L) << 3)) & 255);
out[19 + outPos] = (byte)((
// [______10]
// [65_____]
((in[21 + inPos] & 127L) >>> 5)
| // [765432__]
// [_543210]
((in[22 + inPos] & 127L) << 2)) & 255);
out[20 + outPos] = (byte)((
// [_______0]
// [6______]
((in[22 + inPos] & 127L) >>> 6)
| // [7654321_]
// [6543210]
((in[23 + inPos] & 127L) << 1)) & 255);
out[21 + outPos] = (byte)((
// [_6543210]
// [6543210]
((in[24 + inPos] & 127L))
| // [7_______]
// [______0]
((in[25 + inPos] & 127L) << 7)) & 255);
out[22 + outPos] = (byte)((
// [__543210]
// [654321_]
((in[25 + inPos] & 127L) >>> 1)
| // [76______]
// [_____10]
((in[26 + inPos] & 127L) << 6)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [65432__]
((in[26 + inPos] & 127L) >>> 2)
| // [765_____]
// [____210]
((in[27 + inPos] & 127L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [6543___]
((in[27 + inPos] & 127L) >>> 3)
| // [7654____]
// [___3210]
((in[28 + inPos] & 127L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [_____210]
// [654____]
((in[28 + inPos] & 127L) >>> 4)
| // [76543___]
// [__43210]
((in[29 + inPos] & 127L) << 3)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [65_____]
((in[29 + inPos] & 127L) >>> 5)
| // [765432__]
// [_543210]
((in[30 + inPos] & 127L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [_______0]
// [6______]
((in[30 + inPos] & 127L) >>> 6)
| // [7654321_]
// [6543210]
((in[31 + inPos] & 127L) << 1)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_6543210]
// [6543210]
((((long)in[ 0 + inPos]) ) & 127L);
out[ 1 + outPos] =
// [7_______]
// [______0]
((((long)in[ 0 + inPos]) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in[ 1 + inPos]) << 1) & 127L);
out[ 2 + outPos] =
// [76______]
// [_____10]
((((long)in[ 1 + inPos]) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in[ 2 + inPos]) << 2) & 127L);
out[ 3 + outPos] =
// [765_____]
// [____210]
((((long)in[ 2 + inPos]) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in[ 3 + inPos]) << 3) & 127L);
out[ 4 + outPos] =
// [7654____]
// [___3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in[ 4 + inPos]) << 4) & 127L);
out[ 5 + outPos] =
// [76543___]
// [__43210]
((((long)in[ 4 + inPos]) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in[ 5 + inPos]) << 5) & 127L);
out[ 6 + outPos] =
// [765432__]
// [_543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in[ 6 + inPos]) << 6) & 127L);
out[ 7 + outPos] =
// [7654321_]
// [6543210]
((((long)in[ 6 + inPos]) >> 1) & 127L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_6543210]
// [6543210]
((((long)in.get( 0 + inPos)) ) & 127L);
out[ 1 + outPos] =
// [7_______]
// [______0]
((((long)in.get( 0 + inPos)) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in.get( 1 + inPos)) << 1) & 127L);
out[ 2 + outPos] =
// [76______]
// [_____10]
((((long)in.get( 1 + inPos)) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in.get( 2 + inPos)) << 2) & 127L);
out[ 3 + outPos] =
// [765_____]
// [____210]
((((long)in.get( 2 + inPos)) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in.get( 3 + inPos)) << 3) & 127L);
out[ 4 + outPos] =
// [7654____]
// [___3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in.get( 4 + inPos)) << 4) & 127L);
out[ 5 + outPos] =
// [76543___]
// [__43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in.get( 5 + inPos)) << 5) & 127L);
out[ 6 + outPos] =
// [765432__]
// [_543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in.get( 6 + inPos)) << 6) & 127L);
out[ 7 + outPos] =
// [7654321_]
// [6543210]
((((long)in.get( 6 + inPos)) >> 1) & 127L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_6543210]
// [6543210]
((((long)in[ 0 + inPos]) ) & 127L);
out[ 1 + outPos] =
// [7_______]
// [______0]
((((long)in[ 0 + inPos]) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in[ 1 + inPos]) << 1) & 127L);
out[ 2 + outPos] =
// [76______]
// [_____10]
((((long)in[ 1 + inPos]) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in[ 2 + inPos]) << 2) & 127L);
out[ 3 + outPos] =
// [765_____]
// [____210]
((((long)in[ 2 + inPos]) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in[ 3 + inPos]) << 3) & 127L);
out[ 4 + outPos] =
// [7654____]
// [___3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in[ 4 + inPos]) << 4) & 127L);
out[ 5 + outPos] =
// [76543___]
// [__43210]
((((long)in[ 4 + inPos]) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in[ 5 + inPos]) << 5) & 127L);
out[ 6 + outPos] =
// [765432__]
// [_543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in[ 6 + inPos]) << 6) & 127L);
out[ 7 + outPos] =
// [7654321_]
// [6543210]
((((long)in[ 6 + inPos]) >> 1) & 127L);
out[ 8 + outPos] =
// [_6543210]
// [6543210]
((((long)in[ 7 + inPos]) ) & 127L);
out[ 9 + outPos] =
// [7_______]
// [______0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in[ 8 + inPos]) << 1) & 127L);
out[10 + outPos] =
// [76______]
// [_____10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in[ 9 + inPos]) << 2) & 127L);
out[11 + outPos] =
// [765_____]
// [____210]
((((long)in[ 9 + inPos]) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in[10 + inPos]) << 3) & 127L);
out[12 + outPos] =
// [7654____]
// [___3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in[11 + inPos]) << 4) & 127L);
out[13 + outPos] =
// [76543___]
// [__43210]
((((long)in[11 + inPos]) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in[12 + inPos]) << 5) & 127L);
out[14 + outPos] =
// [765432__]
// [_543210]
((((long)in[12 + inPos]) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in[13 + inPos]) << 6) & 127L);
out[15 + outPos] =
// [7654321_]
// [6543210]
((((long)in[13 + inPos]) >> 1) & 127L);
out[16 + outPos] =
// [_6543210]
// [6543210]
((((long)in[14 + inPos]) ) & 127L);
out[17 + outPos] =
// [7_______]
// [______0]
((((long)in[14 + inPos]) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in[15 + inPos]) << 1) & 127L);
out[18 + outPos] =
// [76______]
// [_____10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in[16 + inPos]) << 2) & 127L);
out[19 + outPos] =
// [765_____]
// [____210]
((((long)in[16 + inPos]) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in[17 + inPos]) << 3) & 127L);
out[20 + outPos] =
// [7654____]
// [___3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in[18 + inPos]) << 4) & 127L);
out[21 + outPos] =
// [76543___]
// [__43210]
((((long)in[18 + inPos]) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in[19 + inPos]) << 5) & 127L);
out[22 + outPos] =
// [765432__]
// [_543210]
((((long)in[19 + inPos]) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in[20 + inPos]) << 6) & 127L);
out[23 + outPos] =
// [7654321_]
// [6543210]
((((long)in[20 + inPos]) >> 1) & 127L);
out[24 + outPos] =
// [_6543210]
// [6543210]
((((long)in[21 + inPos]) ) & 127L);
out[25 + outPos] =
// [7_______]
// [______0]
((((long)in[21 + inPos]) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in[22 + inPos]) << 1) & 127L);
out[26 + outPos] =
// [76______]
// [_____10]
((((long)in[22 + inPos]) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in[23 + inPos]) << 2) & 127L);
out[27 + outPos] =
// [765_____]
// [____210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in[24 + inPos]) << 3) & 127L);
out[28 + outPos] =
// [7654____]
// [___3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in[25 + inPos]) << 4) & 127L);
out[29 + outPos] =
// [76543___]
// [__43210]
((((long)in[25 + inPos]) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in[26 + inPos]) << 5) & 127L);
out[30 + outPos] =
// [765432__]
// [_543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in[27 + inPos]) << 6) & 127L);
out[31 + outPos] =
// [7654321_]
// [6543210]
((((long)in[27 + inPos]) >> 1) & 127L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [_6543210]
// [6543210]
((((long)in.get( 0 + inPos)) ) & 127L);
out[ 1 + outPos] =
// [7_______]
// [______0]
((((long)in.get( 0 + inPos)) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in.get( 1 + inPos)) << 1) & 127L);
out[ 2 + outPos] =
// [76______]
// [_____10]
((((long)in.get( 1 + inPos)) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in.get( 2 + inPos)) << 2) & 127L);
out[ 3 + outPos] =
// [765_____]
// [____210]
((((long)in.get( 2 + inPos)) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in.get( 3 + inPos)) << 3) & 127L);
out[ 4 + outPos] =
// [7654____]
// [___3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in.get( 4 + inPos)) << 4) & 127L);
out[ 5 + outPos] =
// [76543___]
// [__43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in.get( 5 + inPos)) << 5) & 127L);
out[ 6 + outPos] =
// [765432__]
// [_543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in.get( 6 + inPos)) << 6) & 127L);
out[ 7 + outPos] =
// [7654321_]
// [6543210]
((((long)in.get( 6 + inPos)) >> 1) & 127L);
out[ 8 + outPos] =
// [_6543210]
// [6543210]
((((long)in.get( 7 + inPos)) ) & 127L);
out[ 9 + outPos] =
// [7_______]
// [______0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in.get( 8 + inPos)) << 1) & 127L);
out[10 + outPos] =
// [76______]
// [_____10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in.get( 9 + inPos)) << 2) & 127L);
out[11 + outPos] =
// [765_____]
// [____210]
((((long)in.get( 9 + inPos)) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in.get(10 + inPos)) << 3) & 127L);
out[12 + outPos] =
// [7654____]
// [___3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in.get(11 + inPos)) << 4) & 127L);
out[13 + outPos] =
// [76543___]
// [__43210]
((((long)in.get(11 + inPos)) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in.get(12 + inPos)) << 5) & 127L);
out[14 + outPos] =
// [765432__]
// [_543210]
((((long)in.get(12 + inPos)) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in.get(13 + inPos)) << 6) & 127L);
out[15 + outPos] =
// [7654321_]
// [6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L);
out[16 + outPos] =
// [_6543210]
// [6543210]
((((long)in.get(14 + inPos)) ) & 127L);
out[17 + outPos] =
// [7_______]
// [______0]
((((long)in.get(14 + inPos)) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in.get(15 + inPos)) << 1) & 127L);
out[18 + outPos] =
// [76______]
// [_____10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in.get(16 + inPos)) << 2) & 127L);
out[19 + outPos] =
// [765_____]
// [____210]
((((long)in.get(16 + inPos)) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in.get(17 + inPos)) << 3) & 127L);
out[20 + outPos] =
// [7654____]
// [___3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in.get(18 + inPos)) << 4) & 127L);
out[21 + outPos] =
// [76543___]
// [__43210]
((((long)in.get(18 + inPos)) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in.get(19 + inPos)) << 5) & 127L);
out[22 + outPos] =
// [765432__]
// [_543210]
((((long)in.get(19 + inPos)) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in.get(20 + inPos)) << 6) & 127L);
out[23 + outPos] =
// [7654321_]
// [6543210]
((((long)in.get(20 + inPos)) >> 1) & 127L);
out[24 + outPos] =
// [_6543210]
// [6543210]
((((long)in.get(21 + inPos)) ) & 127L);
out[25 + outPos] =
// [7_______]
// [______0]
((((long)in.get(21 + inPos)) >> 7) & 1L)
| // [__543210]
// [654321_]
((((long)in.get(22 + inPos)) << 1) & 127L);
out[26 + outPos] =
// [76______]
// [_____10]
((((long)in.get(22 + inPos)) >> 6) & 3L)
| // [___43210]
// [65432__]
((((long)in.get(23 + inPos)) << 2) & 127L);
out[27 + outPos] =
// [765_____]
// [____210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [____3210]
// [6543___]
((((long)in.get(24 + inPos)) << 3) & 127L);
out[28 + outPos] =
// [7654____]
// [___3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [_____210]
// [654____]
((((long)in.get(25 + inPos)) << 4) & 127L);
out[29 + outPos] =
// [76543___]
// [__43210]
((((long)in.get(25 + inPos)) >> 3) & 31L)
| // [______10]
// [65_____]
((((long)in.get(26 + inPos)) << 5) & 127L);
out[30 + outPos] =
// [765432__]
// [_543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [_______0]
// [6______]
((((long)in.get(27 + inPos)) << 6) & 127L);
out[31 + outPos] =
// [7654321_]
// [6543210]
((((long)in.get(27 + inPos)) >> 1) & 127L);
}
}
private static final class Packer8 extends BytePackerForLong {
private Packer8() {
super(8);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 0 + inPos] & 255L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 1 + inPos] & 255L))) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 2 + inPos] & 255L))) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 3 + inPos] & 255L))) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 4 + inPos] & 255L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 5 + inPos] & 255L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 6 + inPos] & 255L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 7 + inPos] & 255L))) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 0 + inPos] & 255L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 1 + inPos] & 255L))) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 2 + inPos] & 255L))) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 3 + inPos] & 255L))) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 4 + inPos] & 255L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 5 + inPos] & 255L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 6 + inPos] & 255L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 7 + inPos] & 255L))) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 8 + inPos] & 255L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[ 9 + inPos] & 255L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[10 + inPos] & 255L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[11 + inPos] & 255L))) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[12 + inPos] & 255L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[13 + inPos] & 255L))) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[14 + inPos] & 255L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[15 + inPos] & 255L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[16 + inPos] & 255L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[17 + inPos] & 255L))) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[18 + inPos] & 255L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[19 + inPos] & 255L))) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[20 + inPos] & 255L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[21 + inPos] & 255L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[22 + inPos] & 255L))) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[23 + inPos] & 255L))) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[24 + inPos] & 255L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[25 + inPos] & 255L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[26 + inPos] & 255L))) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[27 + inPos] & 255L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[28 + inPos] & 255L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[29 + inPos] & 255L))) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[30 + inPos] & 255L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [76543210]
((in[31 + inPos] & 255L))) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 0 + inPos]) ) & 255L);
out[ 1 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 1 + inPos]) ) & 255L);
out[ 2 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 2 + inPos]) ) & 255L);
out[ 3 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 3 + inPos]) ) & 255L);
out[ 4 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 4 + inPos]) ) & 255L);
out[ 5 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 5 + inPos]) ) & 255L);
out[ 6 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 6 + inPos]) ) & 255L);
out[ 7 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 7 + inPos]) ) & 255L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 0 + inPos)) ) & 255L);
out[ 1 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 1 + inPos)) ) & 255L);
out[ 2 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 2 + inPos)) ) & 255L);
out[ 3 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 3 + inPos)) ) & 255L);
out[ 4 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 4 + inPos)) ) & 255L);
out[ 5 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 5 + inPos)) ) & 255L);
out[ 6 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 6 + inPos)) ) & 255L);
out[ 7 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 7 + inPos)) ) & 255L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 0 + inPos]) ) & 255L);
out[ 1 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 1 + inPos]) ) & 255L);
out[ 2 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 2 + inPos]) ) & 255L);
out[ 3 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 3 + inPos]) ) & 255L);
out[ 4 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 4 + inPos]) ) & 255L);
out[ 5 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 5 + inPos]) ) & 255L);
out[ 6 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 6 + inPos]) ) & 255L);
out[ 7 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 7 + inPos]) ) & 255L);
out[ 8 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 8 + inPos]) ) & 255L);
out[ 9 + outPos] =
// [76543210]
// [76543210]
((((long)in[ 9 + inPos]) ) & 255L);
out[10 + outPos] =
// [76543210]
// [76543210]
((((long)in[10 + inPos]) ) & 255L);
out[11 + outPos] =
// [76543210]
// [76543210]
((((long)in[11 + inPos]) ) & 255L);
out[12 + outPos] =
// [76543210]
// [76543210]
((((long)in[12 + inPos]) ) & 255L);
out[13 + outPos] =
// [76543210]
// [76543210]
((((long)in[13 + inPos]) ) & 255L);
out[14 + outPos] =
// [76543210]
// [76543210]
((((long)in[14 + inPos]) ) & 255L);
out[15 + outPos] =
// [76543210]
// [76543210]
((((long)in[15 + inPos]) ) & 255L);
out[16 + outPos] =
// [76543210]
// [76543210]
((((long)in[16 + inPos]) ) & 255L);
out[17 + outPos] =
// [76543210]
// [76543210]
((((long)in[17 + inPos]) ) & 255L);
out[18 + outPos] =
// [76543210]
// [76543210]
((((long)in[18 + inPos]) ) & 255L);
out[19 + outPos] =
// [76543210]
// [76543210]
((((long)in[19 + inPos]) ) & 255L);
out[20 + outPos] =
// [76543210]
// [76543210]
((((long)in[20 + inPos]) ) & 255L);
out[21 + outPos] =
// [76543210]
// [76543210]
((((long)in[21 + inPos]) ) & 255L);
out[22 + outPos] =
// [76543210]
// [76543210]
((((long)in[22 + inPos]) ) & 255L);
out[23 + outPos] =
// [76543210]
// [76543210]
((((long)in[23 + inPos]) ) & 255L);
out[24 + outPos] =
// [76543210]
// [76543210]
((((long)in[24 + inPos]) ) & 255L);
out[25 + outPos] =
// [76543210]
// [76543210]
((((long)in[25 + inPos]) ) & 255L);
out[26 + outPos] =
// [76543210]
// [76543210]
((((long)in[26 + inPos]) ) & 255L);
out[27 + outPos] =
// [76543210]
// [76543210]
((((long)in[27 + inPos]) ) & 255L);
out[28 + outPos] =
// [76543210]
// [76543210]
((((long)in[28 + inPos]) ) & 255L);
out[29 + outPos] =
// [76543210]
// [76543210]
((((long)in[29 + inPos]) ) & 255L);
out[30 + outPos] =
// [76543210]
// [76543210]
((((long)in[30 + inPos]) ) & 255L);
out[31 + outPos] =
// [76543210]
// [76543210]
((((long)in[31 + inPos]) ) & 255L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 0 + inPos)) ) & 255L);
out[ 1 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 1 + inPos)) ) & 255L);
out[ 2 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 2 + inPos)) ) & 255L);
out[ 3 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 3 + inPos)) ) & 255L);
out[ 4 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 4 + inPos)) ) & 255L);
out[ 5 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 5 + inPos)) ) & 255L);
out[ 6 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 6 + inPos)) ) & 255L);
out[ 7 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 7 + inPos)) ) & 255L);
out[ 8 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 8 + inPos)) ) & 255L);
out[ 9 + outPos] =
// [76543210]
// [76543210]
((((long)in.get( 9 + inPos)) ) & 255L);
out[10 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(10 + inPos)) ) & 255L);
out[11 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(11 + inPos)) ) & 255L);
out[12 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(12 + inPos)) ) & 255L);
out[13 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(13 + inPos)) ) & 255L);
out[14 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(14 + inPos)) ) & 255L);
out[15 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(15 + inPos)) ) & 255L);
out[16 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(16 + inPos)) ) & 255L);
out[17 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(17 + inPos)) ) & 255L);
out[18 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(18 + inPos)) ) & 255L);
out[19 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(19 + inPos)) ) & 255L);
out[20 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(20 + inPos)) ) & 255L);
out[21 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(21 + inPos)) ) & 255L);
out[22 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(22 + inPos)) ) & 255L);
out[23 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(23 + inPos)) ) & 255L);
out[24 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(24 + inPos)) ) & 255L);
out[25 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(25 + inPos)) ) & 255L);
out[26 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(26 + inPos)) ) & 255L);
out[27 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(27 + inPos)) ) & 255L);
out[28 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(28 + inPos)) ) & 255L);
out[29 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(29 + inPos)) ) & 255L);
out[30 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(30 + inPos)) ) & 255L);
out[31 + outPos] =
// [76543210]
// [76543210]
((((long)in.get(31 + inPos)) ) & 255L);
}
}
private static final class Packer9 extends BytePackerForLong {
private Packer9() {
super(9);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_76543210]
((in[ 0 + inPos] & 511L))) & 255);
out[ 1 + outPos] = (byte)((
// [_______0]
// [8________]
((in[ 0 + inPos] & 511L) >>> 8)
| // [7654321_]
// [__6543210]
((in[ 1 + inPos] & 511L) << 1)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [87_______]
((in[ 1 + inPos] & 511L) >>> 7)
| // [765432__]
// [___543210]
((in[ 2 + inPos] & 511L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [_____210]
// [876______]
((in[ 2 + inPos] & 511L) >>> 6)
| // [76543___]
// [____43210]
((in[ 3 + inPos] & 511L) << 3)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [8765_____]
((in[ 3 + inPos] & 511L) >>> 5)
| // [7654____]
// [_____3210]
((in[ 4 + inPos] & 511L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [87654____]
((in[ 4 + inPos] & 511L) >>> 4)
| // [765_____]
// [______210]
((in[ 5 + inPos] & 511L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [876543___]
((in[ 5 + inPos] & 511L) >>> 3)
| // [76______]
// [_______10]
((in[ 6 + inPos] & 511L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [8765432__]
((in[ 6 + inPos] & 511L) >>> 2)
| // [7_______]
// [________0]
((in[ 7 + inPos] & 511L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [87654321_]
((in[ 7 + inPos] & 511L) >>> 1)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_76543210]
((in[ 0 + inPos] & 511L))) & 255);
out[ 1 + outPos] = (byte)((
// [_______0]
// [8________]
((in[ 0 + inPos] & 511L) >>> 8)
| // [7654321_]
// [__6543210]
((in[ 1 + inPos] & 511L) << 1)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [87_______]
((in[ 1 + inPos] & 511L) >>> 7)
| // [765432__]
// [___543210]
((in[ 2 + inPos] & 511L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [_____210]
// [876______]
((in[ 2 + inPos] & 511L) >>> 6)
| // [76543___]
// [____43210]
((in[ 3 + inPos] & 511L) << 3)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [8765_____]
((in[ 3 + inPos] & 511L) >>> 5)
| // [7654____]
// [_____3210]
((in[ 4 + inPos] & 511L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [87654____]
((in[ 4 + inPos] & 511L) >>> 4)
| // [765_____]
// [______210]
((in[ 5 + inPos] & 511L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [876543___]
((in[ 5 + inPos] & 511L) >>> 3)
| // [76______]
// [_______10]
((in[ 6 + inPos] & 511L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [8765432__]
((in[ 6 + inPos] & 511L) >>> 2)
| // [7_______]
// [________0]
((in[ 7 + inPos] & 511L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [87654321_]
((in[ 7 + inPos] & 511L) >>> 1)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_76543210]
((in[ 8 + inPos] & 511L))) & 255);
out[10 + outPos] = (byte)((
// [_______0]
// [8________]
((in[ 8 + inPos] & 511L) >>> 8)
| // [7654321_]
// [__6543210]
((in[ 9 + inPos] & 511L) << 1)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [87_______]
((in[ 9 + inPos] & 511L) >>> 7)
| // [765432__]
// [___543210]
((in[10 + inPos] & 511L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [_____210]
// [876______]
((in[10 + inPos] & 511L) >>> 6)
| // [76543___]
// [____43210]
((in[11 + inPos] & 511L) << 3)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [8765_____]
((in[11 + inPos] & 511L) >>> 5)
| // [7654____]
// [_____3210]
((in[12 + inPos] & 511L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [___43210]
// [87654____]
((in[12 + inPos] & 511L) >>> 4)
| // [765_____]
// [______210]
((in[13 + inPos] & 511L) << 5)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [876543___]
((in[13 + inPos] & 511L) >>> 3)
| // [76______]
// [_______10]
((in[14 + inPos] & 511L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [8765432__]
((in[14 + inPos] & 511L) >>> 2)
| // [7_______]
// [________0]
((in[15 + inPos] & 511L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [87654321_]
((in[15 + inPos] & 511L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_76543210]
((in[16 + inPos] & 511L))) & 255);
out[19 + outPos] = (byte)((
// [_______0]
// [8________]
((in[16 + inPos] & 511L) >>> 8)
| // [7654321_]
// [__6543210]
((in[17 + inPos] & 511L) << 1)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [87_______]
((in[17 + inPos] & 511L) >>> 7)
| // [765432__]
// [___543210]
((in[18 + inPos] & 511L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [_____210]
// [876______]
((in[18 + inPos] & 511L) >>> 6)
| // [76543___]
// [____43210]
((in[19 + inPos] & 511L) << 3)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [8765_____]
((in[19 + inPos] & 511L) >>> 5)
| // [7654____]
// [_____3210]
((in[20 + inPos] & 511L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [87654____]
((in[20 + inPos] & 511L) >>> 4)
| // [765_____]
// [______210]
((in[21 + inPos] & 511L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [876543___]
((in[21 + inPos] & 511L) >>> 3)
| // [76______]
// [_______10]
((in[22 + inPos] & 511L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [_6543210]
// [8765432__]
((in[22 + inPos] & 511L) >>> 2)
| // [7_______]
// [________0]
((in[23 + inPos] & 511L) << 7)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [87654321_]
((in[23 + inPos] & 511L) >>> 1)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_76543210]
((in[24 + inPos] & 511L))) & 255);
out[28 + outPos] = (byte)((
// [_______0]
// [8________]
((in[24 + inPos] & 511L) >>> 8)
| // [7654321_]
// [__6543210]
((in[25 + inPos] & 511L) << 1)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [87_______]
((in[25 + inPos] & 511L) >>> 7)
| // [765432__]
// [___543210]
((in[26 + inPos] & 511L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [_____210]
// [876______]
((in[26 + inPos] & 511L) >>> 6)
| // [76543___]
// [____43210]
((in[27 + inPos] & 511L) << 3)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [8765_____]
((in[27 + inPos] & 511L) >>> 5)
| // [7654____]
// [_____3210]
((in[28 + inPos] & 511L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [___43210]
// [87654____]
((in[28 + inPos] & 511L) >>> 4)
| // [765_____]
// [______210]
((in[29 + inPos] & 511L) << 5)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [876543___]
((in[29 + inPos] & 511L) >>> 3)
| // [76______]
// [_______10]
((in[30 + inPos] & 511L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [_6543210]
// [8765432__]
((in[30 + inPos] & 511L) >>> 2)
| // [7_______]
// [________0]
((in[31 + inPos] & 511L) << 7)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [87654321_]
((in[31 + inPos] & 511L) >>> 1)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_______0]
// [8________]
((((long)in[ 1 + inPos]) << 8) & 511L);
out[ 1 + outPos] =
// [7654321_]
// [__6543210]
((((long)in[ 1 + inPos]) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in[ 2 + inPos]) << 7) & 511L);
out[ 2 + outPos] =
// [765432__]
// [___543210]
((((long)in[ 2 + inPos]) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in[ 3 + inPos]) << 6) & 511L);
out[ 3 + outPos] =
// [76543___]
// [____43210]
((((long)in[ 3 + inPos]) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in[ 4 + inPos]) << 5) & 511L);
out[ 4 + outPos] =
// [7654____]
// [_____3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in[ 5 + inPos]) << 4) & 511L);
out[ 5 + outPos] =
// [765_____]
// [______210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in[ 6 + inPos]) << 3) & 511L);
out[ 6 + outPos] =
// [76______]
// [_______10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in[ 7 + inPos]) << 2) & 511L);
out[ 7 + outPos] =
// [7_______]
// [________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_______0]
// [8________]
((((long)in.get( 1 + inPos)) << 8) & 511L);
out[ 1 + outPos] =
// [7654321_]
// [__6543210]
((((long)in.get( 1 + inPos)) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in.get( 2 + inPos)) << 7) & 511L);
out[ 2 + outPos] =
// [765432__]
// [___543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in.get( 3 + inPos)) << 6) & 511L);
out[ 3 + outPos] =
// [76543___]
// [____43210]
((((long)in.get( 3 + inPos)) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in.get( 4 + inPos)) << 5) & 511L);
out[ 4 + outPos] =
// [7654____]
// [_____3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in.get( 5 + inPos)) << 4) & 511L);
out[ 5 + outPos] =
// [765_____]
// [______210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in.get( 6 + inPos)) << 3) & 511L);
out[ 6 + outPos] =
// [76______]
// [_______10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in.get( 7 + inPos)) << 2) & 511L);
out[ 7 + outPos] =
// [7_______]
// [________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_______0]
// [8________]
((((long)in[ 1 + inPos]) << 8) & 511L);
out[ 1 + outPos] =
// [7654321_]
// [__6543210]
((((long)in[ 1 + inPos]) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in[ 2 + inPos]) << 7) & 511L);
out[ 2 + outPos] =
// [765432__]
// [___543210]
((((long)in[ 2 + inPos]) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in[ 3 + inPos]) << 6) & 511L);
out[ 3 + outPos] =
// [76543___]
// [____43210]
((((long)in[ 3 + inPos]) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in[ 4 + inPos]) << 5) & 511L);
out[ 4 + outPos] =
// [7654____]
// [_____3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in[ 5 + inPos]) << 4) & 511L);
out[ 5 + outPos] =
// [765_____]
// [______210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in[ 6 + inPos]) << 3) & 511L);
out[ 6 + outPos] =
// [76______]
// [_______10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in[ 7 + inPos]) << 2) & 511L);
out[ 7 + outPos] =
// [7_______]
// [________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L);
out[ 8 + outPos] =
// [76543210]
// [_76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [_______0]
// [8________]
((((long)in[10 + inPos]) << 8) & 511L);
out[ 9 + outPos] =
// [7654321_]
// [__6543210]
((((long)in[10 + inPos]) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in[11 + inPos]) << 7) & 511L);
out[10 + outPos] =
// [765432__]
// [___543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in[12 + inPos]) << 6) & 511L);
out[11 + outPos] =
// [76543___]
// [____43210]
((((long)in[12 + inPos]) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in[13 + inPos]) << 5) & 511L);
out[12 + outPos] =
// [7654____]
// [_____3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in[14 + inPos]) << 4) & 511L);
out[13 + outPos] =
// [765_____]
// [______210]
((((long)in[14 + inPos]) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in[15 + inPos]) << 3) & 511L);
out[14 + outPos] =
// [76______]
// [_______10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in[16 + inPos]) << 2) & 511L);
out[15 + outPos] =
// [7_______]
// [________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in[17 + inPos]) << 1) & 511L);
out[16 + outPos] =
// [76543210]
// [_76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [_______0]
// [8________]
((((long)in[19 + inPos]) << 8) & 511L);
out[17 + outPos] =
// [7654321_]
// [__6543210]
((((long)in[19 + inPos]) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in[20 + inPos]) << 7) & 511L);
out[18 + outPos] =
// [765432__]
// [___543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in[21 + inPos]) << 6) & 511L);
out[19 + outPos] =
// [76543___]
// [____43210]
((((long)in[21 + inPos]) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in[22 + inPos]) << 5) & 511L);
out[20 + outPos] =
// [7654____]
// [_____3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in[23 + inPos]) << 4) & 511L);
out[21 + outPos] =
// [765_____]
// [______210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in[24 + inPos]) << 3) & 511L);
out[22 + outPos] =
// [76______]
// [_______10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in[25 + inPos]) << 2) & 511L);
out[23 + outPos] =
// [7_______]
// [________0]
((((long)in[25 + inPos]) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in[26 + inPos]) << 1) & 511L);
out[24 + outPos] =
// [76543210]
// [_76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [_______0]
// [8________]
((((long)in[28 + inPos]) << 8) & 511L);
out[25 + outPos] =
// [7654321_]
// [__6543210]
((((long)in[28 + inPos]) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in[29 + inPos]) << 7) & 511L);
out[26 + outPos] =
// [765432__]
// [___543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in[30 + inPos]) << 6) & 511L);
out[27 + outPos] =
// [76543___]
// [____43210]
((((long)in[30 + inPos]) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in[31 + inPos]) << 5) & 511L);
out[28 + outPos] =
// [7654____]
// [_____3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in[32 + inPos]) << 4) & 511L);
out[29 + outPos] =
// [765_____]
// [______210]
((((long)in[32 + inPos]) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in[33 + inPos]) << 3) & 511L);
out[30 + outPos] =
// [76______]
// [_______10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in[34 + inPos]) << 2) & 511L);
out[31 + outPos] =
// [7_______]
// [________0]
((((long)in[34 + inPos]) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in[35 + inPos]) << 1) & 511L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_______0]
// [8________]
((((long)in.get( 1 + inPos)) << 8) & 511L);
out[ 1 + outPos] =
// [7654321_]
// [__6543210]
((((long)in.get( 1 + inPos)) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in.get( 2 + inPos)) << 7) & 511L);
out[ 2 + outPos] =
// [765432__]
// [___543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in.get( 3 + inPos)) << 6) & 511L);
out[ 3 + outPos] =
// [76543___]
// [____43210]
((((long)in.get( 3 + inPos)) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in.get( 4 + inPos)) << 5) & 511L);
out[ 4 + outPos] =
// [7654____]
// [_____3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in.get( 5 + inPos)) << 4) & 511L);
out[ 5 + outPos] =
// [765_____]
// [______210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in.get( 6 + inPos)) << 3) & 511L);
out[ 6 + outPos] =
// [76______]
// [_______10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in.get( 7 + inPos)) << 2) & 511L);
out[ 7 + outPos] =
// [7_______]
// [________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L);
out[ 8 + outPos] =
// [76543210]
// [_76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [_______0]
// [8________]
((((long)in.get(10 + inPos)) << 8) & 511L);
out[ 9 + outPos] =
// [7654321_]
// [__6543210]
((((long)in.get(10 + inPos)) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in.get(11 + inPos)) << 7) & 511L);
out[10 + outPos] =
// [765432__]
// [___543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in.get(12 + inPos)) << 6) & 511L);
out[11 + outPos] =
// [76543___]
// [____43210]
((((long)in.get(12 + inPos)) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in.get(13 + inPos)) << 5) & 511L);
out[12 + outPos] =
// [7654____]
// [_____3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in.get(14 + inPos)) << 4) & 511L);
out[13 + outPos] =
// [765_____]
// [______210]
((((long)in.get(14 + inPos)) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in.get(15 + inPos)) << 3) & 511L);
out[14 + outPos] =
// [76______]
// [_______10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in.get(16 + inPos)) << 2) & 511L);
out[15 + outPos] =
// [7_______]
// [________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L);
out[16 + outPos] =
// [76543210]
// [_76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [_______0]
// [8________]
((((long)in.get(19 + inPos)) << 8) & 511L);
out[17 + outPos] =
// [7654321_]
// [__6543210]
((((long)in.get(19 + inPos)) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in.get(20 + inPos)) << 7) & 511L);
out[18 + outPos] =
// [765432__]
// [___543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in.get(21 + inPos)) << 6) & 511L);
out[19 + outPos] =
// [76543___]
// [____43210]
((((long)in.get(21 + inPos)) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in.get(22 + inPos)) << 5) & 511L);
out[20 + outPos] =
// [7654____]
// [_____3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in.get(23 + inPos)) << 4) & 511L);
out[21 + outPos] =
// [765_____]
// [______210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in.get(24 + inPos)) << 3) & 511L);
out[22 + outPos] =
// [76______]
// [_______10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in.get(25 + inPos)) << 2) & 511L);
out[23 + outPos] =
// [7_______]
// [________0]
((((long)in.get(25 + inPos)) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in.get(26 + inPos)) << 1) & 511L);
out[24 + outPos] =
// [76543210]
// [_76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [_______0]
// [8________]
((((long)in.get(28 + inPos)) << 8) & 511L);
out[25 + outPos] =
// [7654321_]
// [__6543210]
((((long)in.get(28 + inPos)) >> 1) & 127L)
| // [______10]
// [87_______]
((((long)in.get(29 + inPos)) << 7) & 511L);
out[26 + outPos] =
// [765432__]
// [___543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [_____210]
// [876______]
((((long)in.get(30 + inPos)) << 6) & 511L);
out[27 + outPos] =
// [76543___]
// [____43210]
((((long)in.get(30 + inPos)) >> 3) & 31L)
| // [____3210]
// [8765_____]
((((long)in.get(31 + inPos)) << 5) & 511L);
out[28 + outPos] =
// [7654____]
// [_____3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [___43210]
// [87654____]
((((long)in.get(32 + inPos)) << 4) & 511L);
out[29 + outPos] =
// [765_____]
// [______210]
((((long)in.get(32 + inPos)) >> 5) & 7L)
| // [__543210]
// [876543___]
((((long)in.get(33 + inPos)) << 3) & 511L);
out[30 + outPos] =
// [76______]
// [_______10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [_6543210]
// [8765432__]
((((long)in.get(34 + inPos)) << 2) & 511L);
out[31 + outPos] =
// [7_______]
// [________0]
((((long)in.get(34 + inPos)) >> 7) & 1L)
| // [76543210]
// [87654321_]
((((long)in.get(35 + inPos)) << 1) & 511L);
}
}
private static final class Packer10 extends BytePackerForLong {
private Packer10() {
super(10);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[ 0 + inPos] & 1023L))) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [98________]
((in[ 0 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[ 1 + inPos] & 1023L) << 2)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[ 1 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[ 2 + inPos] & 1023L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[ 2 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[ 3 + inPos] & 1023L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[ 3 + inPos] & 1023L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[ 4 + inPos] & 1023L))) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [98________]
((in[ 4 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[ 5 + inPos] & 1023L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[ 5 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[ 6 + inPos] & 1023L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[ 6 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[ 7 + inPos] & 1023L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[ 7 + inPos] & 1023L) >>> 2)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[ 0 + inPos] & 1023L))) & 255);
out[ 1 + outPos] = (byte)((
// [______10]
// [98________]
((in[ 0 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[ 1 + inPos] & 1023L) << 2)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[ 1 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[ 2 + inPos] & 1023L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[ 2 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[ 3 + inPos] & 1023L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[ 3 + inPos] & 1023L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[ 4 + inPos] & 1023L))) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [98________]
((in[ 4 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[ 5 + inPos] & 1023L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[ 5 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[ 6 + inPos] & 1023L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[ 6 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[ 7 + inPos] & 1023L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[ 7 + inPos] & 1023L) >>> 2)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[ 8 + inPos] & 1023L))) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [98________]
((in[ 8 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[ 9 + inPos] & 1023L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[ 9 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[10 + inPos] & 1023L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[10 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[11 + inPos] & 1023L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[11 + inPos] & 1023L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[12 + inPos] & 1023L))) & 255);
out[16 + outPos] = (byte)((
// [______10]
// [98________]
((in[12 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[13 + inPos] & 1023L) << 2)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[13 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[14 + inPos] & 1023L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[14 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[15 + inPos] & 1023L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[15 + inPos] & 1023L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[16 + inPos] & 1023L))) & 255);
out[21 + outPos] = (byte)((
// [______10]
// [98________]
((in[16 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[17 + inPos] & 1023L) << 2)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[17 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[18 + inPos] & 1023L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[18 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[19 + inPos] & 1023L) << 6)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[19 + inPos] & 1023L) >>> 2)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[20 + inPos] & 1023L))) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [98________]
((in[20 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[21 + inPos] & 1023L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[21 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[22 + inPos] & 1023L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[22 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[23 + inPos] & 1023L) << 6)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[23 + inPos] & 1023L) >>> 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[24 + inPos] & 1023L))) & 255);
out[31 + outPos] = (byte)((
// [______10]
// [98________]
((in[24 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[25 + inPos] & 1023L) << 2)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[25 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[26 + inPos] & 1023L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[26 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[27 + inPos] & 1023L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[27 + inPos] & 1023L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__76543210]
((in[28 + inPos] & 1023L))) & 255);
out[36 + outPos] = (byte)((
// [______10]
// [98________]
((in[28 + inPos] & 1023L) >>> 8)
| // [765432__]
// [____543210]
((in[29 + inPos] & 1023L) << 2)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876______]
((in[29 + inPos] & 1023L) >>> 6)
| // [7654____]
// [______3210]
((in[30 + inPos] & 1023L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [__543210]
// [987654____]
((in[30 + inPos] & 1023L) >>> 4)
| // [76______]
// [________10]
((in[31 + inPos] & 1023L) << 6)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [98765432__]
((in[31 + inPos] & 1023L) >>> 2)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[ 1 + inPos]) << 8) & 1023L);
out[ 1 + outPos] =
// [765432__]
// [____543210]
((((long)in[ 1 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[ 2 + inPos]) << 6) & 1023L);
out[ 2 + outPos] =
// [7654____]
// [______3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[ 3 + inPos]) << 4) & 1023L);
out[ 3 + outPos] =
// [76______]
// [________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L);
out[ 4 + outPos] =
// [76543210]
// [__76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[ 6 + inPos]) << 8) & 1023L);
out[ 5 + outPos] =
// [765432__]
// [____543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[ 7 + inPos]) << 6) & 1023L);
out[ 6 + outPos] =
// [7654____]
// [______3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[ 8 + inPos]) << 4) & 1023L);
out[ 7 + outPos] =
// [76______]
// [________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get( 1 + inPos)) << 8) & 1023L);
out[ 1 + outPos] =
// [765432__]
// [____543210]
((((long)in.get( 1 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get( 2 + inPos)) << 6) & 1023L);
out[ 2 + outPos] =
// [7654____]
// [______3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get( 3 + inPos)) << 4) & 1023L);
out[ 3 + outPos] =
// [76______]
// [________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L);
out[ 4 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get( 6 + inPos)) << 8) & 1023L);
out[ 5 + outPos] =
// [765432__]
// [____543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get( 7 + inPos)) << 6) & 1023L);
out[ 6 + outPos] =
// [7654____]
// [______3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get( 8 + inPos)) << 4) & 1023L);
out[ 7 + outPos] =
// [76______]
// [________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[ 1 + inPos]) << 8) & 1023L);
out[ 1 + outPos] =
// [765432__]
// [____543210]
((((long)in[ 1 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[ 2 + inPos]) << 6) & 1023L);
out[ 2 + outPos] =
// [7654____]
// [______3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[ 3 + inPos]) << 4) & 1023L);
out[ 3 + outPos] =
// [76______]
// [________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L);
out[ 4 + outPos] =
// [76543210]
// [__76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[ 6 + inPos]) << 8) & 1023L);
out[ 5 + outPos] =
// [765432__]
// [____543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[ 7 + inPos]) << 6) & 1023L);
out[ 6 + outPos] =
// [7654____]
// [______3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[ 8 + inPos]) << 4) & 1023L);
out[ 7 + outPos] =
// [76______]
// [________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L);
out[ 8 + outPos] =
// [76543210]
// [__76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[11 + inPos]) << 8) & 1023L);
out[ 9 + outPos] =
// [765432__]
// [____543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[12 + inPos]) << 6) & 1023L);
out[10 + outPos] =
// [7654____]
// [______3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[13 + inPos]) << 4) & 1023L);
out[11 + outPos] =
// [76______]
// [________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[14 + inPos]) << 2) & 1023L);
out[12 + outPos] =
// [76543210]
// [__76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[16 + inPos]) << 8) & 1023L);
out[13 + outPos] =
// [765432__]
// [____543210]
((((long)in[16 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[17 + inPos]) << 6) & 1023L);
out[14 + outPos] =
// [7654____]
// [______3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[18 + inPos]) << 4) & 1023L);
out[15 + outPos] =
// [76______]
// [________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[19 + inPos]) << 2) & 1023L);
out[16 + outPos] =
// [76543210]
// [__76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[21 + inPos]) << 8) & 1023L);
out[17 + outPos] =
// [765432__]
// [____543210]
((((long)in[21 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[22 + inPos]) << 6) & 1023L);
out[18 + outPos] =
// [7654____]
// [______3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[23 + inPos]) << 4) & 1023L);
out[19 + outPos] =
// [76______]
// [________10]
((((long)in[23 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[24 + inPos]) << 2) & 1023L);
out[20 + outPos] =
// [76543210]
// [__76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[26 + inPos]) << 8) & 1023L);
out[21 + outPos] =
// [765432__]
// [____543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[27 + inPos]) << 6) & 1023L);
out[22 + outPos] =
// [7654____]
// [______3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[28 + inPos]) << 4) & 1023L);
out[23 + outPos] =
// [76______]
// [________10]
((((long)in[28 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[29 + inPos]) << 2) & 1023L);
out[24 + outPos] =
// [76543210]
// [__76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[31 + inPos]) << 8) & 1023L);
out[25 + outPos] =
// [765432__]
// [____543210]
((((long)in[31 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[32 + inPos]) << 6) & 1023L);
out[26 + outPos] =
// [7654____]
// [______3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[33 + inPos]) << 4) & 1023L);
out[27 + outPos] =
// [76______]
// [________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[34 + inPos]) << 2) & 1023L);
out[28 + outPos] =
// [76543210]
// [__76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [______10]
// [98________]
((((long)in[36 + inPos]) << 8) & 1023L);
out[29 + outPos] =
// [765432__]
// [____543210]
((((long)in[36 + inPos]) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in[37 + inPos]) << 6) & 1023L);
out[30 + outPos] =
// [7654____]
// [______3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in[38 + inPos]) << 4) & 1023L);
out[31 + outPos] =
// [76______]
// [________10]
((((long)in[38 + inPos]) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in[39 + inPos]) << 2) & 1023L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get( 1 + inPos)) << 8) & 1023L);
out[ 1 + outPos] =
// [765432__]
// [____543210]
((((long)in.get( 1 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get( 2 + inPos)) << 6) & 1023L);
out[ 2 + outPos] =
// [7654____]
// [______3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get( 3 + inPos)) << 4) & 1023L);
out[ 3 + outPos] =
// [76______]
// [________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L);
out[ 4 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get( 6 + inPos)) << 8) & 1023L);
out[ 5 + outPos] =
// [765432__]
// [____543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get( 7 + inPos)) << 6) & 1023L);
out[ 6 + outPos] =
// [7654____]
// [______3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get( 8 + inPos)) << 4) & 1023L);
out[ 7 + outPos] =
// [76______]
// [________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L);
out[ 8 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(11 + inPos)) << 8) & 1023L);
out[ 9 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(12 + inPos)) << 6) & 1023L);
out[10 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(13 + inPos)) << 4) & 1023L);
out[11 + outPos] =
// [76______]
// [________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L);
out[12 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(16 + inPos)) << 8) & 1023L);
out[13 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(16 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(17 + inPos)) << 6) & 1023L);
out[14 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(18 + inPos)) << 4) & 1023L);
out[15 + outPos] =
// [76______]
// [________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L);
out[16 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(21 + inPos)) << 8) & 1023L);
out[17 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(21 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(22 + inPos)) << 6) & 1023L);
out[18 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(23 + inPos)) << 4) & 1023L);
out[19 + outPos] =
// [76______]
// [________10]
((((long)in.get(23 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(24 + inPos)) << 2) & 1023L);
out[20 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(26 + inPos)) << 8) & 1023L);
out[21 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(27 + inPos)) << 6) & 1023L);
out[22 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(28 + inPos)) << 4) & 1023L);
out[23 + outPos] =
// [76______]
// [________10]
((((long)in.get(28 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(29 + inPos)) << 2) & 1023L);
out[24 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(31 + inPos)) << 8) & 1023L);
out[25 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(31 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(32 + inPos)) << 6) & 1023L);
out[26 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(33 + inPos)) << 4) & 1023L);
out[27 + outPos] =
// [76______]
// [________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L);
out[28 + outPos] =
// [76543210]
// [__76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [______10]
// [98________]
((((long)in.get(36 + inPos)) << 8) & 1023L);
out[29 + outPos] =
// [765432__]
// [____543210]
((((long)in.get(36 + inPos)) >> 2) & 63L)
| // [____3210]
// [9876______]
((((long)in.get(37 + inPos)) << 6) & 1023L);
out[30 + outPos] =
// [7654____]
// [______3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [__543210]
// [987654____]
((((long)in.get(38 + inPos)) << 4) & 1023L);
out[31 + outPos] =
// [76______]
// [________10]
((((long)in.get(38 + inPos)) >> 6) & 3L)
| // [76543210]
// [98765432__]
((((long)in.get(39 + inPos)) << 2) & 1023L);
}
}
private static final class Packer11 extends BytePackerForLong {
private Packer11() {
super(11);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___76543210]
((in[ 0 + inPos] & 2047L))) & 255);
out[ 1 + outPos] = (byte)((
// [_____210]
// [098________]
((in[ 0 + inPos] & 2047L) >>> 8)
| // [76543___]
// [______43210]
((in[ 1 + inPos] & 2047L) << 3)) & 255);
out[ 2 + outPos] = (byte)((
// [__543210]
// [098765_____]
((in[ 1 + inPos] & 2047L) >>> 5)
| // [76______]
// [_________10]
((in[ 2 + inPos] & 2047L) << 6)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_98765432__]
((in[ 2 + inPos] & 2047L) >>> 2)) & 255);
out[ 4 + outPos] = (byte)((
// [_______0]
// [0__________]
((in[ 2 + inPos] & 2047L) >>> 10)
| // [7654321_]
// [____6543210]
((in[ 3 + inPos] & 2047L) << 1)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [0987_______]
((in[ 3 + inPos] & 2047L) >>> 7)
| // [7654____]
// [_______3210]
((in[ 4 + inPos] & 2047L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [_6543210]
// [0987654____]
((in[ 4 + inPos] & 2047L) >>> 4)
| // [7_______]
// [__________0]
((in[ 5 + inPos] & 2047L) << 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__87654321_]
((in[ 5 + inPos] & 2047L) >>> 1)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [09_________]
((in[ 5 + inPos] & 2047L) >>> 9)
| // [765432__]
// [_____543210]
((in[ 6 + inPos] & 2047L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [___43210]
// [09876______]
((in[ 6 + inPos] & 2047L) >>> 6)
| // [765_____]
// [________210]
((in[ 7 + inPos] & 2047L) << 5)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [09876543___]
((in[ 7 + inPos] & 2047L) >>> 3)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___76543210]
((in[ 0 + inPos] & 2047L))) & 255);
out[ 1 + outPos] = (byte)((
// [_____210]
// [098________]
((in[ 0 + inPos] & 2047L) >>> 8)
| // [76543___]
// [______43210]
((in[ 1 + inPos] & 2047L) << 3)) & 255);
out[ 2 + outPos] = (byte)((
// [__543210]
// [098765_____]
((in[ 1 + inPos] & 2047L) >>> 5)
| // [76______]
// [_________10]
((in[ 2 + inPos] & 2047L) << 6)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_98765432__]
((in[ 2 + inPos] & 2047L) >>> 2)) & 255);
out[ 4 + outPos] = (byte)((
// [_______0]
// [0__________]
((in[ 2 + inPos] & 2047L) >>> 10)
| // [7654321_]
// [____6543210]
((in[ 3 + inPos] & 2047L) << 1)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [0987_______]
((in[ 3 + inPos] & 2047L) >>> 7)
| // [7654____]
// [_______3210]
((in[ 4 + inPos] & 2047L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [_6543210]
// [0987654____]
((in[ 4 + inPos] & 2047L) >>> 4)
| // [7_______]
// [__________0]
((in[ 5 + inPos] & 2047L) << 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__87654321_]
((in[ 5 + inPos] & 2047L) >>> 1)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [09_________]
((in[ 5 + inPos] & 2047L) >>> 9)
| // [765432__]
// [_____543210]
((in[ 6 + inPos] & 2047L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [___43210]
// [09876______]
((in[ 6 + inPos] & 2047L) >>> 6)
| // [765_____]
// [________210]
((in[ 7 + inPos] & 2047L) << 5)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [09876543___]
((in[ 7 + inPos] & 2047L) >>> 3)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [___76543210]
((in[ 8 + inPos] & 2047L))) & 255);
out[12 + outPos] = (byte)((
// [_____210]
// [098________]
((in[ 8 + inPos] & 2047L) >>> 8)
| // [76543___]
// [______43210]
((in[ 9 + inPos] & 2047L) << 3)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [098765_____]
((in[ 9 + inPos] & 2047L) >>> 5)
| // [76______]
// [_________10]
((in[10 + inPos] & 2047L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_98765432__]
((in[10 + inPos] & 2047L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [_______0]
// [0__________]
((in[10 + inPos] & 2047L) >>> 10)
| // [7654321_]
// [____6543210]
((in[11 + inPos] & 2047L) << 1)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [0987_______]
((in[11 + inPos] & 2047L) >>> 7)
| // [7654____]
// [_______3210]
((in[12 + inPos] & 2047L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [_6543210]
// [0987654____]
((in[12 + inPos] & 2047L) >>> 4)
| // [7_______]
// [__________0]
((in[13 + inPos] & 2047L) << 7)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__87654321_]
((in[13 + inPos] & 2047L) >>> 1)) & 255);
out[19 + outPos] = (byte)((
// [______10]
// [09_________]
((in[13 + inPos] & 2047L) >>> 9)
| // [765432__]
// [_____543210]
((in[14 + inPos] & 2047L) << 2)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [09876______]
((in[14 + inPos] & 2047L) >>> 6)
| // [765_____]
// [________210]
((in[15 + inPos] & 2047L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [09876543___]
((in[15 + inPos] & 2047L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___76543210]
((in[16 + inPos] & 2047L))) & 255);
out[23 + outPos] = (byte)((
// [_____210]
// [098________]
((in[16 + inPos] & 2047L) >>> 8)
| // [76543___]
// [______43210]
((in[17 + inPos] & 2047L) << 3)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [098765_____]
((in[17 + inPos] & 2047L) >>> 5)
| // [76______]
// [_________10]
((in[18 + inPos] & 2047L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_98765432__]
((in[18 + inPos] & 2047L) >>> 2)) & 255);
out[26 + outPos] = (byte)((
// [_______0]
// [0__________]
((in[18 + inPos] & 2047L) >>> 10)
| // [7654321_]
// [____6543210]
((in[19 + inPos] & 2047L) << 1)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [0987_______]
((in[19 + inPos] & 2047L) >>> 7)
| // [7654____]
// [_______3210]
((in[20 + inPos] & 2047L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [_6543210]
// [0987654____]
((in[20 + inPos] & 2047L) >>> 4)
| // [7_______]
// [__________0]
((in[21 + inPos] & 2047L) << 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__87654321_]
((in[21 + inPos] & 2047L) >>> 1)) & 255);
out[30 + outPos] = (byte)((
// [______10]
// [09_________]
((in[21 + inPos] & 2047L) >>> 9)
| // [765432__]
// [_____543210]
((in[22 + inPos] & 2047L) << 2)) & 255);
out[31 + outPos] = (byte)((
// [___43210]
// [09876______]
((in[22 + inPos] & 2047L) >>> 6)
| // [765_____]
// [________210]
((in[23 + inPos] & 2047L) << 5)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [09876543___]
((in[23 + inPos] & 2047L) >>> 3)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___76543210]
((in[24 + inPos] & 2047L))) & 255);
out[34 + outPos] = (byte)((
// [_____210]
// [098________]
((in[24 + inPos] & 2047L) >>> 8)
| // [76543___]
// [______43210]
((in[25 + inPos] & 2047L) << 3)) & 255);
out[35 + outPos] = (byte)((
// [__543210]
// [098765_____]
((in[25 + inPos] & 2047L) >>> 5)
| // [76______]
// [_________10]
((in[26 + inPos] & 2047L) << 6)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_98765432__]
((in[26 + inPos] & 2047L) >>> 2)) & 255);
out[37 + outPos] = (byte)((
// [_______0]
// [0__________]
((in[26 + inPos] & 2047L) >>> 10)
| // [7654321_]
// [____6543210]
((in[27 + inPos] & 2047L) << 1)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [0987_______]
((in[27 + inPos] & 2047L) >>> 7)
| // [7654____]
// [_______3210]
((in[28 + inPos] & 2047L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [_6543210]
// [0987654____]
((in[28 + inPos] & 2047L) >>> 4)
| // [7_______]
// [__________0]
((in[29 + inPos] & 2047L) << 7)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__87654321_]
((in[29 + inPos] & 2047L) >>> 1)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [09_________]
((in[29 + inPos] & 2047L) >>> 9)
| // [765432__]
// [_____543210]
((in[30 + inPos] & 2047L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [___43210]
// [09876______]
((in[30 + inPos] & 2047L) >>> 6)
| // [765_____]
// [________210]
((in[31 + inPos] & 2047L) << 5)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [09876543___]
((in[31 + inPos] & 2047L) >>> 3)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_____210]
// [098________]
((((long)in[ 1 + inPos]) << 8) & 2047L);
out[ 1 + outPos] =
// [76543___]
// [______43210]
((((long)in[ 1 + inPos]) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in[ 2 + inPos]) << 5) & 2047L);
out[ 2 + outPos] =
// [76______]
// [_________10]
((((long)in[ 2 + inPos]) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in[ 3 + inPos]) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in[ 4 + inPos]) << 10) & 2047L);
out[ 3 + outPos] =
// [7654321_]
// [____6543210]
((((long)in[ 4 + inPos]) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in[ 5 + inPos]) << 7) & 2047L);
out[ 4 + outPos] =
// [7654____]
// [_______3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in[ 6 + inPos]) << 4) & 2047L);
out[ 5 + outPos] =
// [7_______]
// [__________0]
((((long)in[ 6 + inPos]) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in[ 7 + inPos]) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in[ 8 + inPos]) << 9) & 2047L);
out[ 6 + outPos] =
// [765432__]
// [_____543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in[ 9 + inPos]) << 6) & 2047L);
out[ 7 + outPos] =
// [765_____]
// [________210]
((((long)in[ 9 + inPos]) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in[10 + inPos]) << 3) & 2047L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_____210]
// [098________]
((((long)in.get( 1 + inPos)) << 8) & 2047L);
out[ 1 + outPos] =
// [76543___]
// [______43210]
((((long)in.get( 1 + inPos)) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in.get( 2 + inPos)) << 5) & 2047L);
out[ 2 + outPos] =
// [76______]
// [_________10]
((((long)in.get( 2 + inPos)) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in.get( 3 + inPos)) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in.get( 4 + inPos)) << 10) & 2047L);
out[ 3 + outPos] =
// [7654321_]
// [____6543210]
((((long)in.get( 4 + inPos)) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in.get( 5 + inPos)) << 7) & 2047L);
out[ 4 + outPos] =
// [7654____]
// [_______3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in.get( 6 + inPos)) << 4) & 2047L);
out[ 5 + outPos] =
// [7_______]
// [__________0]
((((long)in.get( 6 + inPos)) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in.get( 7 + inPos)) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in.get( 8 + inPos)) << 9) & 2047L);
out[ 6 + outPos] =
// [765432__]
// [_____543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in.get( 9 + inPos)) << 6) & 2047L);
out[ 7 + outPos] =
// [765_____]
// [________210]
((((long)in.get( 9 + inPos)) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in.get(10 + inPos)) << 3) & 2047L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_____210]
// [098________]
((((long)in[ 1 + inPos]) << 8) & 2047L);
out[ 1 + outPos] =
// [76543___]
// [______43210]
((((long)in[ 1 + inPos]) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in[ 2 + inPos]) << 5) & 2047L);
out[ 2 + outPos] =
// [76______]
// [_________10]
((((long)in[ 2 + inPos]) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in[ 3 + inPos]) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in[ 4 + inPos]) << 10) & 2047L);
out[ 3 + outPos] =
// [7654321_]
// [____6543210]
((((long)in[ 4 + inPos]) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in[ 5 + inPos]) << 7) & 2047L);
out[ 4 + outPos] =
// [7654____]
// [_______3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in[ 6 + inPos]) << 4) & 2047L);
out[ 5 + outPos] =
// [7_______]
// [__________0]
((((long)in[ 6 + inPos]) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in[ 7 + inPos]) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in[ 8 + inPos]) << 9) & 2047L);
out[ 6 + outPos] =
// [765432__]
// [_____543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in[ 9 + inPos]) << 6) & 2047L);
out[ 7 + outPos] =
// [765_____]
// [________210]
((((long)in[ 9 + inPos]) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in[10 + inPos]) << 3) & 2047L);
out[ 8 + outPos] =
// [76543210]
// [___76543210]
((((long)in[11 + inPos]) ) & 255L)
| // [_____210]
// [098________]
((((long)in[12 + inPos]) << 8) & 2047L);
out[ 9 + outPos] =
// [76543___]
// [______43210]
((((long)in[12 + inPos]) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in[13 + inPos]) << 5) & 2047L);
out[10 + outPos] =
// [76______]
// [_________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in[14 + inPos]) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in[15 + inPos]) << 10) & 2047L);
out[11 + outPos] =
// [7654321_]
// [____6543210]
((((long)in[15 + inPos]) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in[16 + inPos]) << 7) & 2047L);
out[12 + outPos] =
// [7654____]
// [_______3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in[17 + inPos]) << 4) & 2047L);
out[13 + outPos] =
// [7_______]
// [__________0]
((((long)in[17 + inPos]) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in[18 + inPos]) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in[19 + inPos]) << 9) & 2047L);
out[14 + outPos] =
// [765432__]
// [_____543210]
((((long)in[19 + inPos]) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in[20 + inPos]) << 6) & 2047L);
out[15 + outPos] =
// [765_____]
// [________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in[21 + inPos]) << 3) & 2047L);
out[16 + outPos] =
// [76543210]
// [___76543210]
((((long)in[22 + inPos]) ) & 255L)
| // [_____210]
// [098________]
((((long)in[23 + inPos]) << 8) & 2047L);
out[17 + outPos] =
// [76543___]
// [______43210]
((((long)in[23 + inPos]) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in[24 + inPos]) << 5) & 2047L);
out[18 + outPos] =
// [76______]
// [_________10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in[25 + inPos]) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in[26 + inPos]) << 10) & 2047L);
out[19 + outPos] =
// [7654321_]
// [____6543210]
((((long)in[26 + inPos]) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in[27 + inPos]) << 7) & 2047L);
out[20 + outPos] =
// [7654____]
// [_______3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in[28 + inPos]) << 4) & 2047L);
out[21 + outPos] =
// [7_______]
// [__________0]
((((long)in[28 + inPos]) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in[29 + inPos]) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in[30 + inPos]) << 9) & 2047L);
out[22 + outPos] =
// [765432__]
// [_____543210]
((((long)in[30 + inPos]) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in[31 + inPos]) << 6) & 2047L);
out[23 + outPos] =
// [765_____]
// [________210]
((((long)in[31 + inPos]) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in[32 + inPos]) << 3) & 2047L);
out[24 + outPos] =
// [76543210]
// [___76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [_____210]
// [098________]
((((long)in[34 + inPos]) << 8) & 2047L);
out[25 + outPos] =
// [76543___]
// [______43210]
((((long)in[34 + inPos]) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in[35 + inPos]) << 5) & 2047L);
out[26 + outPos] =
// [76______]
// [_________10]
((((long)in[35 + inPos]) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in[36 + inPos]) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in[37 + inPos]) << 10) & 2047L);
out[27 + outPos] =
// [7654321_]
// [____6543210]
((((long)in[37 + inPos]) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in[38 + inPos]) << 7) & 2047L);
out[28 + outPos] =
// [7654____]
// [_______3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in[39 + inPos]) << 4) & 2047L);
out[29 + outPos] =
// [7_______]
// [__________0]
((((long)in[39 + inPos]) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in[40 + inPos]) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in[41 + inPos]) << 9) & 2047L);
out[30 + outPos] =
// [765432__]
// [_____543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in[42 + inPos]) << 6) & 2047L);
out[31 + outPos] =
// [765_____]
// [________210]
((((long)in[42 + inPos]) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in[43 + inPos]) << 3) & 2047L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_____210]
// [098________]
((((long)in.get( 1 + inPos)) << 8) & 2047L);
out[ 1 + outPos] =
// [76543___]
// [______43210]
((((long)in.get( 1 + inPos)) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in.get( 2 + inPos)) << 5) & 2047L);
out[ 2 + outPos] =
// [76______]
// [_________10]
((((long)in.get( 2 + inPos)) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in.get( 3 + inPos)) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in.get( 4 + inPos)) << 10) & 2047L);
out[ 3 + outPos] =
// [7654321_]
// [____6543210]
((((long)in.get( 4 + inPos)) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in.get( 5 + inPos)) << 7) & 2047L);
out[ 4 + outPos] =
// [7654____]
// [_______3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in.get( 6 + inPos)) << 4) & 2047L);
out[ 5 + outPos] =
// [7_______]
// [__________0]
((((long)in.get( 6 + inPos)) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in.get( 7 + inPos)) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in.get( 8 + inPos)) << 9) & 2047L);
out[ 6 + outPos] =
// [765432__]
// [_____543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in.get( 9 + inPos)) << 6) & 2047L);
out[ 7 + outPos] =
// [765_____]
// [________210]
((((long)in.get( 9 + inPos)) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in.get(10 + inPos)) << 3) & 2047L);
out[ 8 + outPos] =
// [76543210]
// [___76543210]
((((long)in.get(11 + inPos)) ) & 255L)
| // [_____210]
// [098________]
((((long)in.get(12 + inPos)) << 8) & 2047L);
out[ 9 + outPos] =
// [76543___]
// [______43210]
((((long)in.get(12 + inPos)) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in.get(13 + inPos)) << 5) & 2047L);
out[10 + outPos] =
// [76______]
// [_________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in.get(15 + inPos)) << 10) & 2047L);
out[11 + outPos] =
// [7654321_]
// [____6543210]
((((long)in.get(15 + inPos)) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in.get(16 + inPos)) << 7) & 2047L);
out[12 + outPos] =
// [7654____]
// [_______3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in.get(17 + inPos)) << 4) & 2047L);
out[13 + outPos] =
// [7_______]
// [__________0]
((((long)in.get(17 + inPos)) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in.get(18 + inPos)) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in.get(19 + inPos)) << 9) & 2047L);
out[14 + outPos] =
// [765432__]
// [_____543210]
((((long)in.get(19 + inPos)) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in.get(20 + inPos)) << 6) & 2047L);
out[15 + outPos] =
// [765_____]
// [________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L);
out[16 + outPos] =
// [76543210]
// [___76543210]
((((long)in.get(22 + inPos)) ) & 255L)
| // [_____210]
// [098________]
((((long)in.get(23 + inPos)) << 8) & 2047L);
out[17 + outPos] =
// [76543___]
// [______43210]
((((long)in.get(23 + inPos)) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in.get(24 + inPos)) << 5) & 2047L);
out[18 + outPos] =
// [76______]
// [_________10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in.get(25 + inPos)) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in.get(26 + inPos)) << 10) & 2047L);
out[19 + outPos] =
// [7654321_]
// [____6543210]
((((long)in.get(26 + inPos)) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in.get(27 + inPos)) << 7) & 2047L);
out[20 + outPos] =
// [7654____]
// [_______3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in.get(28 + inPos)) << 4) & 2047L);
out[21 + outPos] =
// [7_______]
// [__________0]
((((long)in.get(28 + inPos)) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in.get(29 + inPos)) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in.get(30 + inPos)) << 9) & 2047L);
out[22 + outPos] =
// [765432__]
// [_____543210]
((((long)in.get(30 + inPos)) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in.get(31 + inPos)) << 6) & 2047L);
out[23 + outPos] =
// [765_____]
// [________210]
((((long)in.get(31 + inPos)) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in.get(32 + inPos)) << 3) & 2047L);
out[24 + outPos] =
// [76543210]
// [___76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [_____210]
// [098________]
((((long)in.get(34 + inPos)) << 8) & 2047L);
out[25 + outPos] =
// [76543___]
// [______43210]
((((long)in.get(34 + inPos)) >> 3) & 31L)
| // [__543210]
// [098765_____]
((((long)in.get(35 + inPos)) << 5) & 2047L);
out[26 + outPos] =
// [76______]
// [_________10]
((((long)in.get(35 + inPos)) >> 6) & 3L)
| // [76543210]
// [_98765432__]
((((long)in.get(36 + inPos)) << 2) & 1023L)
| // [_______0]
// [0__________]
((((long)in.get(37 + inPos)) << 10) & 2047L);
out[27 + outPos] =
// [7654321_]
// [____6543210]
((((long)in.get(37 + inPos)) >> 1) & 127L)
| // [____3210]
// [0987_______]
((((long)in.get(38 + inPos)) << 7) & 2047L);
out[28 + outPos] =
// [7654____]
// [_______3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [_6543210]
// [0987654____]
((((long)in.get(39 + inPos)) << 4) & 2047L);
out[29 + outPos] =
// [7_______]
// [__________0]
((((long)in.get(39 + inPos)) >> 7) & 1L)
| // [76543210]
// [__87654321_]
((((long)in.get(40 + inPos)) << 1) & 511L)
| // [______10]
// [09_________]
((((long)in.get(41 + inPos)) << 9) & 2047L);
out[30 + outPos] =
// [765432__]
// [_____543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [___43210]
// [09876______]
((((long)in.get(42 + inPos)) << 6) & 2047L);
out[31 + outPos] =
// [765_____]
// [________210]
((((long)in.get(42 + inPos)) >> 5) & 7L)
| // [76543210]
// [09876543___]
((((long)in.get(43 + inPos)) << 3) & 2047L);
}
}
private static final class Packer12 extends BytePackerForLong {
private Packer12() {
super(12);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 0 + inPos] & 4095L))) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 0 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 1 + inPos] & 4095L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 1 + inPos] & 4095L) >>> 4)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 2 + inPos] & 4095L))) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 2 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 3 + inPos] & 4095L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 3 + inPos] & 4095L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 4 + inPos] & 4095L))) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 4 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 5 + inPos] & 4095L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 5 + inPos] & 4095L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 6 + inPos] & 4095L))) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 6 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 7 + inPos] & 4095L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 7 + inPos] & 4095L) >>> 4)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 0 + inPos] & 4095L))) & 255);
out[ 1 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 0 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 1 + inPos] & 4095L) << 4)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 1 + inPos] & 4095L) >>> 4)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 2 + inPos] & 4095L))) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 2 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 3 + inPos] & 4095L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 3 + inPos] & 4095L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 4 + inPos] & 4095L))) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 4 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 5 + inPos] & 4095L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 5 + inPos] & 4095L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 6 + inPos] & 4095L))) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 6 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 7 + inPos] & 4095L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 7 + inPos] & 4095L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[ 8 + inPos] & 4095L))) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[ 8 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[ 9 + inPos] & 4095L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[ 9 + inPos] & 4095L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[10 + inPos] & 4095L))) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[10 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[11 + inPos] & 4095L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[11 + inPos] & 4095L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[12 + inPos] & 4095L))) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[12 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[13 + inPos] & 4095L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[13 + inPos] & 4095L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[14 + inPos] & 4095L))) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[14 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[15 + inPos] & 4095L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[15 + inPos] & 4095L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[16 + inPos] & 4095L))) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[16 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[17 + inPos] & 4095L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[17 + inPos] & 4095L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[18 + inPos] & 4095L))) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[18 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[19 + inPos] & 4095L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[19 + inPos] & 4095L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[20 + inPos] & 4095L))) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[20 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[21 + inPos] & 4095L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[21 + inPos] & 4095L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[22 + inPos] & 4095L))) & 255);
out[34 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[22 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[23 + inPos] & 4095L) << 4)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[23 + inPos] & 4095L) >>> 4)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[24 + inPos] & 4095L))) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[24 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[25 + inPos] & 4095L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[25 + inPos] & 4095L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[26 + inPos] & 4095L))) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[26 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[27 + inPos] & 4095L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[27 + inPos] & 4095L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[28 + inPos] & 4095L))) & 255);
out[43 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[28 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[29 + inPos] & 4095L) << 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[29 + inPos] & 4095L) >>> 4)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____76543210]
((in[30 + inPos] & 4095L))) & 255);
out[46 + outPos] = (byte)((
// [____3210]
// [1098________]
((in[30 + inPos] & 4095L) >>> 8)
| // [7654____]
// [________3210]
((in[31 + inPos] & 4095L) << 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [10987654____]
((in[31 + inPos] & 4095L) >>> 4)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 1 + inPos]) << 8) & 4095L);
out[ 1 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 1 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 2 + inPos]) << 4) & 4095L);
out[ 2 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 3 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 4 + inPos]) << 8) & 4095L);
out[ 3 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L);
out[ 4 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 7 + inPos]) << 8) & 4095L);
out[ 5 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L);
out[ 6 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[10 + inPos]) << 8) & 4095L);
out[ 7 + outPos] =
// [7654____]
// [________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[11 + inPos]) << 4) & 4095L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 1 + inPos)) << 8) & 4095L);
out[ 1 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 2 + inPos)) << 4) & 4095L);
out[ 2 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 3 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 4 + inPos)) << 8) & 4095L);
out[ 3 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L);
out[ 4 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 7 + inPos)) << 8) & 4095L);
out[ 5 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L);
out[ 6 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(10 + inPos)) << 8) & 4095L);
out[ 7 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 1 + inPos]) << 8) & 4095L);
out[ 1 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 1 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 2 + inPos]) << 4) & 4095L);
out[ 2 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 3 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 4 + inPos]) << 8) & 4095L);
out[ 3 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L);
out[ 4 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[ 7 + inPos]) << 8) & 4095L);
out[ 5 + outPos] =
// [7654____]
// [________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L);
out[ 6 + outPos] =
// [76543210]
// [____76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[10 + inPos]) << 8) & 4095L);
out[ 7 + outPos] =
// [7654____]
// [________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[11 + inPos]) << 4) & 4095L);
out[ 8 + outPos] =
// [76543210]
// [____76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[13 + inPos]) << 8) & 4095L);
out[ 9 + outPos] =
// [7654____]
// [________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[14 + inPos]) << 4) & 4095L);
out[10 + outPos] =
// [76543210]
// [____76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[16 + inPos]) << 8) & 4095L);
out[11 + outPos] =
// [7654____]
// [________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[17 + inPos]) << 4) & 4095L);
out[12 + outPos] =
// [76543210]
// [____76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[19 + inPos]) << 8) & 4095L);
out[13 + outPos] =
// [7654____]
// [________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[20 + inPos]) << 4) & 4095L);
out[14 + outPos] =
// [76543210]
// [____76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[22 + inPos]) << 8) & 4095L);
out[15 + outPos] =
// [7654____]
// [________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[23 + inPos]) << 4) & 4095L);
out[16 + outPos] =
// [76543210]
// [____76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[25 + inPos]) << 8) & 4095L);
out[17 + outPos] =
// [7654____]
// [________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[26 + inPos]) << 4) & 4095L);
out[18 + outPos] =
// [76543210]
// [____76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[28 + inPos]) << 8) & 4095L);
out[19 + outPos] =
// [7654____]
// [________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[29 + inPos]) << 4) & 4095L);
out[20 + outPos] =
// [76543210]
// [____76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[31 + inPos]) << 8) & 4095L);
out[21 + outPos] =
// [7654____]
// [________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[32 + inPos]) << 4) & 4095L);
out[22 + outPos] =
// [76543210]
// [____76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[34 + inPos]) << 8) & 4095L);
out[23 + outPos] =
// [7654____]
// [________3210]
((((long)in[34 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[35 + inPos]) << 4) & 4095L);
out[24 + outPos] =
// [76543210]
// [____76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[37 + inPos]) << 8) & 4095L);
out[25 + outPos] =
// [7654____]
// [________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[38 + inPos]) << 4) & 4095L);
out[26 + outPos] =
// [76543210]
// [____76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[40 + inPos]) << 8) & 4095L);
out[27 + outPos] =
// [7654____]
// [________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[41 + inPos]) << 4) & 4095L);
out[28 + outPos] =
// [76543210]
// [____76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[43 + inPos]) << 8) & 4095L);
out[29 + outPos] =
// [7654____]
// [________3210]
((((long)in[43 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[44 + inPos]) << 4) & 4095L);
out[30 + outPos] =
// [76543210]
// [____76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [____3210]
// [1098________]
((((long)in[46 + inPos]) << 8) & 4095L);
out[31 + outPos] =
// [7654____]
// [________3210]
((((long)in[46 + inPos]) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in[47 + inPos]) << 4) & 4095L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 1 + inPos)) << 8) & 4095L);
out[ 1 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 1 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 2 + inPos)) << 4) & 4095L);
out[ 2 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 3 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 4 + inPos)) << 8) & 4095L);
out[ 3 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L);
out[ 4 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get( 7 + inPos)) << 8) & 4095L);
out[ 5 + outPos] =
// [7654____]
// [________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L);
out[ 6 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(10 + inPos)) << 8) & 4095L);
out[ 7 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L);
out[ 8 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(13 + inPos)) << 8) & 4095L);
out[ 9 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L);
out[10 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(16 + inPos)) << 8) & 4095L);
out[11 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L);
out[12 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(19 + inPos)) << 8) & 4095L);
out[13 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L);
out[14 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(22 + inPos)) << 8) & 4095L);
out[15 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L);
out[16 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(25 + inPos)) << 8) & 4095L);
out[17 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L);
out[18 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(28 + inPos)) << 8) & 4095L);
out[19 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L);
out[20 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(31 + inPos)) << 8) & 4095L);
out[21 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L);
out[22 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(34 + inPos)) << 8) & 4095L);
out[23 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(34 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(35 + inPos)) << 4) & 4095L);
out[24 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(37 + inPos)) << 8) & 4095L);
out[25 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L);
out[26 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(40 + inPos)) << 8) & 4095L);
out[27 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L);
out[28 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(43 + inPos)) << 8) & 4095L);
out[29 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(43 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(44 + inPos)) << 4) & 4095L);
out[30 + outPos] =
// [76543210]
// [____76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [____3210]
// [1098________]
((((long)in.get(46 + inPos)) << 8) & 4095L);
out[31 + outPos] =
// [7654____]
// [________3210]
((((long)in.get(46 + inPos)) >> 4) & 15L)
| // [76543210]
// [10987654____]
((((long)in.get(47 + inPos)) << 4) & 4095L);
}
}
private static final class Packer13 extends BytePackerForLong {
private Packer13() {
super(13);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____76543210]
((in[ 0 + inPos] & 8191L))) & 255);
out[ 1 + outPos] = (byte)((
// [___43210]
// [21098________]
((in[ 0 + inPos] & 8191L) >>> 8)
| // [765_____]
// [__________210]
((in[ 1 + inPos] & 8191L) << 5)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__09876543___]
((in[ 1 + inPos] & 8191L) >>> 3)) & 255);
out[ 3 + outPos] = (byte)((
// [______10]
// [21___________]
((in[ 1 + inPos] & 8191L) >>> 11)
| // [765432__]
// [_______543210]
((in[ 2 + inPos] & 8191L) << 2)) & 255);
out[ 4 + outPos] = (byte)((
// [_6543210]
// [2109876______]
((in[ 2 + inPos] & 8191L) >>> 6)
| // [7_______]
// [____________0]
((in[ 3 + inPos] & 8191L) << 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____87654321_]
((in[ 3 + inPos] & 8191L) >>> 1)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [2109_________]
((in[ 3 + inPos] & 8191L) >>> 9)
| // [7654____]
// [_________3210]
((in[ 4 + inPos] & 8191L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_10987654____]
((in[ 4 + inPos] & 8191L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [_______0]
// [2____________]
((in[ 4 + inPos] & 8191L) >>> 12)
| // [7654321_]
// [______6543210]
((in[ 5 + inPos] & 8191L) << 1)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [210987_______]
((in[ 5 + inPos] & 8191L) >>> 7)
| // [76______]
// [___________10]
((in[ 6 + inPos] & 8191L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [___98765432__]
((in[ 6 + inPos] & 8191L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [_____210]
// [210__________]
((in[ 6 + inPos] & 8191L) >>> 10)
| // [76543___]
// [________43210]
((in[ 7 + inPos] & 8191L) << 3)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [21098765_____]
((in[ 7 + inPos] & 8191L) >>> 5)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____76543210]
((in[ 0 + inPos] & 8191L))) & 255);
out[ 1 + outPos] = (byte)((
// [___43210]
// [21098________]
((in[ 0 + inPos] & 8191L) >>> 8)
| // [765_____]
// [__________210]
((in[ 1 + inPos] & 8191L) << 5)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__09876543___]
((in[ 1 + inPos] & 8191L) >>> 3)) & 255);
out[ 3 + outPos] = (byte)((
// [______10]
// [21___________]
((in[ 1 + inPos] & 8191L) >>> 11)
| // [765432__]
// [_______543210]
((in[ 2 + inPos] & 8191L) << 2)) & 255);
out[ 4 + outPos] = (byte)((
// [_6543210]
// [2109876______]
((in[ 2 + inPos] & 8191L) >>> 6)
| // [7_______]
// [____________0]
((in[ 3 + inPos] & 8191L) << 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____87654321_]
((in[ 3 + inPos] & 8191L) >>> 1)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [2109_________]
((in[ 3 + inPos] & 8191L) >>> 9)
| // [7654____]
// [_________3210]
((in[ 4 + inPos] & 8191L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_10987654____]
((in[ 4 + inPos] & 8191L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [_______0]
// [2____________]
((in[ 4 + inPos] & 8191L) >>> 12)
| // [7654321_]
// [______6543210]
((in[ 5 + inPos] & 8191L) << 1)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [210987_______]
((in[ 5 + inPos] & 8191L) >>> 7)
| // [76______]
// [___________10]
((in[ 6 + inPos] & 8191L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [___98765432__]
((in[ 6 + inPos] & 8191L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [_____210]
// [210__________]
((in[ 6 + inPos] & 8191L) >>> 10)
| // [76543___]
// [________43210]
((in[ 7 + inPos] & 8191L) << 3)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [21098765_____]
((in[ 7 + inPos] & 8191L) >>> 5)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____76543210]
((in[ 8 + inPos] & 8191L))) & 255);
out[14 + outPos] = (byte)((
// [___43210]
// [21098________]
((in[ 8 + inPos] & 8191L) >>> 8)
| // [765_____]
// [__________210]
((in[ 9 + inPos] & 8191L) << 5)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__09876543___]
((in[ 9 + inPos] & 8191L) >>> 3)) & 255);
out[16 + outPos] = (byte)((
// [______10]
// [21___________]
((in[ 9 + inPos] & 8191L) >>> 11)
| // [765432__]
// [_______543210]
((in[10 + inPos] & 8191L) << 2)) & 255);
out[17 + outPos] = (byte)((
// [_6543210]
// [2109876______]
((in[10 + inPos] & 8191L) >>> 6)
| // [7_______]
// [____________0]
((in[11 + inPos] & 8191L) << 7)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____87654321_]
((in[11 + inPos] & 8191L) >>> 1)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [2109_________]
((in[11 + inPos] & 8191L) >>> 9)
| // [7654____]
// [_________3210]
((in[12 + inPos] & 8191L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_10987654____]
((in[12 + inPos] & 8191L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [_______0]
// [2____________]
((in[12 + inPos] & 8191L) >>> 12)
| // [7654321_]
// [______6543210]
((in[13 + inPos] & 8191L) << 1)) & 255);
out[22 + outPos] = (byte)((
// [__543210]
// [210987_______]
((in[13 + inPos] & 8191L) >>> 7)
| // [76______]
// [___________10]
((in[14 + inPos] & 8191L) << 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___98765432__]
((in[14 + inPos] & 8191L) >>> 2)) & 255);
out[24 + outPos] = (byte)((
// [_____210]
// [210__________]
((in[14 + inPos] & 8191L) >>> 10)
| // [76543___]
// [________43210]
((in[15 + inPos] & 8191L) << 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [21098765_____]
((in[15 + inPos] & 8191L) >>> 5)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_____76543210]
((in[16 + inPos] & 8191L))) & 255);
out[27 + outPos] = (byte)((
// [___43210]
// [21098________]
((in[16 + inPos] & 8191L) >>> 8)
| // [765_____]
// [__________210]
((in[17 + inPos] & 8191L) << 5)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__09876543___]
((in[17 + inPos] & 8191L) >>> 3)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [21___________]
((in[17 + inPos] & 8191L) >>> 11)
| // [765432__]
// [_______543210]
((in[18 + inPos] & 8191L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [_6543210]
// [2109876______]
((in[18 + inPos] & 8191L) >>> 6)
| // [7_______]
// [____________0]
((in[19 + inPos] & 8191L) << 7)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____87654321_]
((in[19 + inPos] & 8191L) >>> 1)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [2109_________]
((in[19 + inPos] & 8191L) >>> 9)
| // [7654____]
// [_________3210]
((in[20 + inPos] & 8191L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_10987654____]
((in[20 + inPos] & 8191L) >>> 4)) & 255);
out[34 + outPos] = (byte)((
// [_______0]
// [2____________]
((in[20 + inPos] & 8191L) >>> 12)
| // [7654321_]
// [______6543210]
((in[21 + inPos] & 8191L) << 1)) & 255);
out[35 + outPos] = (byte)((
// [__543210]
// [210987_______]
((in[21 + inPos] & 8191L) >>> 7)
| // [76______]
// [___________10]
((in[22 + inPos] & 8191L) << 6)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___98765432__]
((in[22 + inPos] & 8191L) >>> 2)) & 255);
out[37 + outPos] = (byte)((
// [_____210]
// [210__________]
((in[22 + inPos] & 8191L) >>> 10)
| // [76543___]
// [________43210]
((in[23 + inPos] & 8191L) << 3)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [21098765_____]
((in[23 + inPos] & 8191L) >>> 5)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____76543210]
((in[24 + inPos] & 8191L))) & 255);
out[40 + outPos] = (byte)((
// [___43210]
// [21098________]
((in[24 + inPos] & 8191L) >>> 8)
| // [765_____]
// [__________210]
((in[25 + inPos] & 8191L) << 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__09876543___]
((in[25 + inPos] & 8191L) >>> 3)) & 255);
out[42 + outPos] = (byte)((
// [______10]
// [21___________]
((in[25 + inPos] & 8191L) >>> 11)
| // [765432__]
// [_______543210]
((in[26 + inPos] & 8191L) << 2)) & 255);
out[43 + outPos] = (byte)((
// [_6543210]
// [2109876______]
((in[26 + inPos] & 8191L) >>> 6)
| // [7_______]
// [____________0]
((in[27 + inPos] & 8191L) << 7)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____87654321_]
((in[27 + inPos] & 8191L) >>> 1)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [2109_________]
((in[27 + inPos] & 8191L) >>> 9)
| // [7654____]
// [_________3210]
((in[28 + inPos] & 8191L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_10987654____]
((in[28 + inPos] & 8191L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [_______0]
// [2____________]
((in[28 + inPos] & 8191L) >>> 12)
| // [7654321_]
// [______6543210]
((in[29 + inPos] & 8191L) << 1)) & 255);
out[48 + outPos] = (byte)((
// [__543210]
// [210987_______]
((in[29 + inPos] & 8191L) >>> 7)
| // [76______]
// [___________10]
((in[30 + inPos] & 8191L) << 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [___98765432__]
((in[30 + inPos] & 8191L) >>> 2)) & 255);
out[50 + outPos] = (byte)((
// [_____210]
// [210__________]
((in[30 + inPos] & 8191L) >>> 10)
| // [76543___]
// [________43210]
((in[31 + inPos] & 8191L) << 3)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [21098765_____]
((in[31 + inPos] & 8191L) >>> 5)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [___43210]
// [21098________]
((((long)in[ 1 + inPos]) << 8) & 8191L);
out[ 1 + outPos] =
// [765_____]
// [__________210]
((((long)in[ 1 + inPos]) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in[ 2 + inPos]) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in[ 3 + inPos]) << 11) & 8191L);
out[ 2 + outPos] =
// [765432__]
// [_______543210]
((((long)in[ 3 + inPos]) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in[ 4 + inPos]) << 6) & 8191L);
out[ 3 + outPos] =
// [7_______]
// [____________0]
((((long)in[ 4 + inPos]) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in[ 5 + inPos]) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in[ 6 + inPos]) << 9) & 8191L);
out[ 4 + outPos] =
// [7654____]
// [_________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in[ 8 + inPos]) << 12) & 8191L);
out[ 5 + outPos] =
// [7654321_]
// [______6543210]
((((long)in[ 8 + inPos]) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in[ 9 + inPos]) << 7) & 8191L);
out[ 6 + outPos] =
// [76______]
// [___________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in[11 + inPos]) << 10) & 8191L);
out[ 7 + outPos] =
// [76543___]
// [________43210]
((((long)in[11 + inPos]) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in[12 + inPos]) << 5) & 8191L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [___43210]
// [21098________]
((((long)in.get( 1 + inPos)) << 8) & 8191L);
out[ 1 + outPos] =
// [765_____]
// [__________210]
((((long)in.get( 1 + inPos)) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in.get( 2 + inPos)) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in.get( 3 + inPos)) << 11) & 8191L);
out[ 2 + outPos] =
// [765432__]
// [_______543210]
((((long)in.get( 3 + inPos)) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in.get( 4 + inPos)) << 6) & 8191L);
out[ 3 + outPos] =
// [7_______]
// [____________0]
((((long)in.get( 4 + inPos)) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in.get( 5 + inPos)) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in.get( 6 + inPos)) << 9) & 8191L);
out[ 4 + outPos] =
// [7654____]
// [_________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in.get( 8 + inPos)) << 12) & 8191L);
out[ 5 + outPos] =
// [7654321_]
// [______6543210]
((((long)in.get( 8 + inPos)) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in.get( 9 + inPos)) << 7) & 8191L);
out[ 6 + outPos] =
// [76______]
// [___________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in.get(11 + inPos)) << 10) & 8191L);
out[ 7 + outPos] =
// [76543___]
// [________43210]
((((long)in.get(11 + inPos)) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in.get(12 + inPos)) << 5) & 8191L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [___43210]
// [21098________]
((((long)in[ 1 + inPos]) << 8) & 8191L);
out[ 1 + outPos] =
// [765_____]
// [__________210]
((((long)in[ 1 + inPos]) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in[ 2 + inPos]) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in[ 3 + inPos]) << 11) & 8191L);
out[ 2 + outPos] =
// [765432__]
// [_______543210]
((((long)in[ 3 + inPos]) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in[ 4 + inPos]) << 6) & 8191L);
out[ 3 + outPos] =
// [7_______]
// [____________0]
((((long)in[ 4 + inPos]) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in[ 5 + inPos]) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in[ 6 + inPos]) << 9) & 8191L);
out[ 4 + outPos] =
// [7654____]
// [_________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in[ 8 + inPos]) << 12) & 8191L);
out[ 5 + outPos] =
// [7654321_]
// [______6543210]
((((long)in[ 8 + inPos]) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in[ 9 + inPos]) << 7) & 8191L);
out[ 6 + outPos] =
// [76______]
// [___________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in[11 + inPos]) << 10) & 8191L);
out[ 7 + outPos] =
// [76543___]
// [________43210]
((((long)in[11 + inPos]) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in[12 + inPos]) << 5) & 8191L);
out[ 8 + outPos] =
// [76543210]
// [_____76543210]
((((long)in[13 + inPos]) ) & 255L)
| // [___43210]
// [21098________]
((((long)in[14 + inPos]) << 8) & 8191L);
out[ 9 + outPos] =
// [765_____]
// [__________210]
((((long)in[14 + inPos]) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in[15 + inPos]) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in[16 + inPos]) << 11) & 8191L);
out[10 + outPos] =
// [765432__]
// [_______543210]
((((long)in[16 + inPos]) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in[17 + inPos]) << 6) & 8191L);
out[11 + outPos] =
// [7_______]
// [____________0]
((((long)in[17 + inPos]) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in[18 + inPos]) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in[19 + inPos]) << 9) & 8191L);
out[12 + outPos] =
// [7654____]
// [_________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in[21 + inPos]) << 12) & 8191L);
out[13 + outPos] =
// [7654321_]
// [______6543210]
((((long)in[21 + inPos]) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in[22 + inPos]) << 7) & 8191L);
out[14 + outPos] =
// [76______]
// [___________10]
((((long)in[22 + inPos]) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in[23 + inPos]) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in[24 + inPos]) << 10) & 8191L);
out[15 + outPos] =
// [76543___]
// [________43210]
((((long)in[24 + inPos]) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in[25 + inPos]) << 5) & 8191L);
out[16 + outPos] =
// [76543210]
// [_____76543210]
((((long)in[26 + inPos]) ) & 255L)
| // [___43210]
// [21098________]
((((long)in[27 + inPos]) << 8) & 8191L);
out[17 + outPos] =
// [765_____]
// [__________210]
((((long)in[27 + inPos]) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in[28 + inPos]) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in[29 + inPos]) << 11) & 8191L);
out[18 + outPos] =
// [765432__]
// [_______543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in[30 + inPos]) << 6) & 8191L);
out[19 + outPos] =
// [7_______]
// [____________0]
((((long)in[30 + inPos]) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in[31 + inPos]) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in[32 + inPos]) << 9) & 8191L);
out[20 + outPos] =
// [7654____]
// [_________3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in[33 + inPos]) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in[34 + inPos]) << 12) & 8191L);
out[21 + outPos] =
// [7654321_]
// [______6543210]
((((long)in[34 + inPos]) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in[35 + inPos]) << 7) & 8191L);
out[22 + outPos] =
// [76______]
// [___________10]
((((long)in[35 + inPos]) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in[36 + inPos]) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in[37 + inPos]) << 10) & 8191L);
out[23 + outPos] =
// [76543___]
// [________43210]
((((long)in[37 + inPos]) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in[38 + inPos]) << 5) & 8191L);
out[24 + outPos] =
// [76543210]
// [_____76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [___43210]
// [21098________]
((((long)in[40 + inPos]) << 8) & 8191L);
out[25 + outPos] =
// [765_____]
// [__________210]
((((long)in[40 + inPos]) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in[41 + inPos]) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in[42 + inPos]) << 11) & 8191L);
out[26 + outPos] =
// [765432__]
// [_______543210]
((((long)in[42 + inPos]) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in[43 + inPos]) << 6) & 8191L);
out[27 + outPos] =
// [7_______]
// [____________0]
((((long)in[43 + inPos]) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in[44 + inPos]) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in[45 + inPos]) << 9) & 8191L);
out[28 + outPos] =
// [7654____]
// [_________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in[47 + inPos]) << 12) & 8191L);
out[29 + outPos] =
// [7654321_]
// [______6543210]
((((long)in[47 + inPos]) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in[48 + inPos]) << 7) & 8191L);
out[30 + outPos] =
// [76______]
// [___________10]
((((long)in[48 + inPos]) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in[49 + inPos]) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in[50 + inPos]) << 10) & 8191L);
out[31 + outPos] =
// [76543___]
// [________43210]
((((long)in[50 + inPos]) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in[51 + inPos]) << 5) & 8191L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [___43210]
// [21098________]
((((long)in.get( 1 + inPos)) << 8) & 8191L);
out[ 1 + outPos] =
// [765_____]
// [__________210]
((((long)in.get( 1 + inPos)) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in.get( 2 + inPos)) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in.get( 3 + inPos)) << 11) & 8191L);
out[ 2 + outPos] =
// [765432__]
// [_______543210]
((((long)in.get( 3 + inPos)) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in.get( 4 + inPos)) << 6) & 8191L);
out[ 3 + outPos] =
// [7_______]
// [____________0]
((((long)in.get( 4 + inPos)) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in.get( 5 + inPos)) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in.get( 6 + inPos)) << 9) & 8191L);
out[ 4 + outPos] =
// [7654____]
// [_________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in.get( 8 + inPos)) << 12) & 8191L);
out[ 5 + outPos] =
// [7654321_]
// [______6543210]
((((long)in.get( 8 + inPos)) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in.get( 9 + inPos)) << 7) & 8191L);
out[ 6 + outPos] =
// [76______]
// [___________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in.get(11 + inPos)) << 10) & 8191L);
out[ 7 + outPos] =
// [76543___]
// [________43210]
((((long)in.get(11 + inPos)) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in.get(12 + inPos)) << 5) & 8191L);
out[ 8 + outPos] =
// [76543210]
// [_____76543210]
((((long)in.get(13 + inPos)) ) & 255L)
| // [___43210]
// [21098________]
((((long)in.get(14 + inPos)) << 8) & 8191L);
out[ 9 + outPos] =
// [765_____]
// [__________210]
((((long)in.get(14 + inPos)) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in.get(15 + inPos)) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in.get(16 + inPos)) << 11) & 8191L);
out[10 + outPos] =
// [765432__]
// [_______543210]
((((long)in.get(16 + inPos)) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in.get(17 + inPos)) << 6) & 8191L);
out[11 + outPos] =
// [7_______]
// [____________0]
((((long)in.get(17 + inPos)) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in.get(18 + inPos)) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in.get(19 + inPos)) << 9) & 8191L);
out[12 + outPos] =
// [7654____]
// [_________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in.get(21 + inPos)) << 12) & 8191L);
out[13 + outPos] =
// [7654321_]
// [______6543210]
((((long)in.get(21 + inPos)) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in.get(22 + inPos)) << 7) & 8191L);
out[14 + outPos] =
// [76______]
// [___________10]
((((long)in.get(22 + inPos)) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in.get(23 + inPos)) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in.get(24 + inPos)) << 10) & 8191L);
out[15 + outPos] =
// [76543___]
// [________43210]
((((long)in.get(24 + inPos)) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in.get(25 + inPos)) << 5) & 8191L);
out[16 + outPos] =
// [76543210]
// [_____76543210]
((((long)in.get(26 + inPos)) ) & 255L)
| // [___43210]
// [21098________]
((((long)in.get(27 + inPos)) << 8) & 8191L);
out[17 + outPos] =
// [765_____]
// [__________210]
((((long)in.get(27 + inPos)) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in.get(28 + inPos)) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in.get(29 + inPos)) << 11) & 8191L);
out[18 + outPos] =
// [765432__]
// [_______543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in.get(30 + inPos)) << 6) & 8191L);
out[19 + outPos] =
// [7_______]
// [____________0]
((((long)in.get(30 + inPos)) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in.get(31 + inPos)) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in.get(32 + inPos)) << 9) & 8191L);
out[20 + outPos] =
// [7654____]
// [_________3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in.get(33 + inPos)) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in.get(34 + inPos)) << 12) & 8191L);
out[21 + outPos] =
// [7654321_]
// [______6543210]
((((long)in.get(34 + inPos)) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in.get(35 + inPos)) << 7) & 8191L);
out[22 + outPos] =
// [76______]
// [___________10]
((((long)in.get(35 + inPos)) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in.get(36 + inPos)) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in.get(37 + inPos)) << 10) & 8191L);
out[23 + outPos] =
// [76543___]
// [________43210]
((((long)in.get(37 + inPos)) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in.get(38 + inPos)) << 5) & 8191L);
out[24 + outPos] =
// [76543210]
// [_____76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [___43210]
// [21098________]
((((long)in.get(40 + inPos)) << 8) & 8191L);
out[25 + outPos] =
// [765_____]
// [__________210]
((((long)in.get(40 + inPos)) >> 5) & 7L)
| // [76543210]
// [__09876543___]
((((long)in.get(41 + inPos)) << 3) & 2047L)
| // [______10]
// [21___________]
((((long)in.get(42 + inPos)) << 11) & 8191L);
out[26 + outPos] =
// [765432__]
// [_______543210]
((((long)in.get(42 + inPos)) >> 2) & 63L)
| // [_6543210]
// [2109876______]
((((long)in.get(43 + inPos)) << 6) & 8191L);
out[27 + outPos] =
// [7_______]
// [____________0]
((((long)in.get(43 + inPos)) >> 7) & 1L)
| // [76543210]
// [____87654321_]
((((long)in.get(44 + inPos)) << 1) & 511L)
| // [____3210]
// [2109_________]
((((long)in.get(45 + inPos)) << 9) & 8191L);
out[28 + outPos] =
// [7654____]
// [_________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [_10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [_______0]
// [2____________]
((((long)in.get(47 + inPos)) << 12) & 8191L);
out[29 + outPos] =
// [7654321_]
// [______6543210]
((((long)in.get(47 + inPos)) >> 1) & 127L)
| // [__543210]
// [210987_______]
((((long)in.get(48 + inPos)) << 7) & 8191L);
out[30 + outPos] =
// [76______]
// [___________10]
((((long)in.get(48 + inPos)) >> 6) & 3L)
| // [76543210]
// [___98765432__]
((((long)in.get(49 + inPos)) << 2) & 1023L)
| // [_____210]
// [210__________]
((((long)in.get(50 + inPos)) << 10) & 8191L);
out[31 + outPos] =
// [76543___]
// [________43210]
((((long)in.get(50 + inPos)) >> 3) & 31L)
| // [76543210]
// [21098765_____]
((((long)in.get(51 + inPos)) << 5) & 8191L);
}
}
private static final class Packer14 extends BytePackerForLong {
private Packer14() {
super(14);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[ 0 + inPos] & 16383L))) & 255);
out[ 1 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[ 0 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[ 1 + inPos] & 16383L) << 6)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[ 1 + inPos] & 16383L) >>> 2)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[ 1 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[ 2 + inPos] & 16383L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[ 2 + inPos] & 16383L) >>> 4)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [32____________]
((in[ 2 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[ 3 + inPos] & 16383L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[ 3 + inPos] & 16383L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[ 4 + inPos] & 16383L))) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[ 4 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[ 5 + inPos] & 16383L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[ 5 + inPos] & 16383L) >>> 2)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[ 5 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[ 6 + inPos] & 16383L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[ 6 + inPos] & 16383L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [______10]
// [32____________]
((in[ 6 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[ 7 + inPos] & 16383L) << 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[ 7 + inPos] & 16383L) >>> 6)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[ 0 + inPos] & 16383L))) & 255);
out[ 1 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[ 0 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[ 1 + inPos] & 16383L) << 6)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[ 1 + inPos] & 16383L) >>> 2)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[ 1 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[ 2 + inPos] & 16383L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[ 2 + inPos] & 16383L) >>> 4)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [32____________]
((in[ 2 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[ 3 + inPos] & 16383L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[ 3 + inPos] & 16383L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[ 4 + inPos] & 16383L))) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[ 4 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[ 5 + inPos] & 16383L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[ 5 + inPos] & 16383L) >>> 2)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[ 5 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[ 6 + inPos] & 16383L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[ 6 + inPos] & 16383L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [______10]
// [32____________]
((in[ 6 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[ 7 + inPos] & 16383L) << 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[ 7 + inPos] & 16383L) >>> 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[ 8 + inPos] & 16383L))) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[ 8 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[ 9 + inPos] & 16383L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[ 9 + inPos] & 16383L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[ 9 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[10 + inPos] & 16383L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[10 + inPos] & 16383L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [______10]
// [32____________]
((in[10 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[11 + inPos] & 16383L) << 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[11 + inPos] & 16383L) >>> 6)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[12 + inPos] & 16383L))) & 255);
out[22 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[12 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[13 + inPos] & 16383L) << 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[13 + inPos] & 16383L) >>> 2)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[13 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[14 + inPos] & 16383L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[14 + inPos] & 16383L) >>> 4)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [32____________]
((in[14 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[15 + inPos] & 16383L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[15 + inPos] & 16383L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[16 + inPos] & 16383L))) & 255);
out[29 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[16 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[17 + inPos] & 16383L) << 6)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[17 + inPos] & 16383L) >>> 2)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[17 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[18 + inPos] & 16383L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[18 + inPos] & 16383L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [______10]
// [32____________]
((in[18 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[19 + inPos] & 16383L) << 2)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[19 + inPos] & 16383L) >>> 6)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[20 + inPos] & 16383L))) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[20 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[21 + inPos] & 16383L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[21 + inPos] & 16383L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[21 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[22 + inPos] & 16383L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[22 + inPos] & 16383L) >>> 4)) & 255);
out[40 + outPos] = (byte)((
// [______10]
// [32____________]
((in[22 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[23 + inPos] & 16383L) << 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[23 + inPos] & 16383L) >>> 6)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[24 + inPos] & 16383L))) & 255);
out[43 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[24 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[25 + inPos] & 16383L) << 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[25 + inPos] & 16383L) >>> 2)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[25 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[26 + inPos] & 16383L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[26 + inPos] & 16383L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [32____________]
((in[26 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[27 + inPos] & 16383L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[27 + inPos] & 16383L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______76543210]
((in[28 + inPos] & 16383L))) & 255);
out[50 + outPos] = (byte)((
// [__543210]
// [321098________]
((in[28 + inPos] & 16383L) >>> 8)
| // [76______]
// [____________10]
((in[29 + inPos] & 16383L) << 6)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____98765432__]
((in[29 + inPos] & 16383L) >>> 2)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [3210__________]
((in[29 + inPos] & 16383L) >>> 10)
| // [7654____]
// [__________3210]
((in[30 + inPos] & 16383L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__10987654____]
((in[30 + inPos] & 16383L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [______10]
// [32____________]
((in[30 + inPos] & 16383L) >>> 12)
| // [765432__]
// [________543210]
((in[31 + inPos] & 16383L) << 2)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [32109876______]
((in[31 + inPos] & 16383L) >>> 6)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[ 1 + inPos]) << 8) & 16383L);
out[ 1 + outPos] =
// [76______]
// [____________10]
((((long)in[ 1 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[ 2 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[ 3 + inPos]) << 10) & 16383L);
out[ 2 + outPos] =
// [7654____]
// [__________3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[ 4 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[ 5 + inPos]) << 12) & 16383L);
out[ 3 + outPos] =
// [765432__]
// [________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L);
out[ 4 + outPos] =
// [76543210]
// [______76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[ 8 + inPos]) << 8) & 16383L);
out[ 5 + outPos] =
// [76______]
// [____________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[10 + inPos]) << 10) & 16383L);
out[ 6 + outPos] =
// [7654____]
// [__________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[12 + inPos]) << 12) & 16383L);
out[ 7 + outPos] =
// [765432__]
// [________543210]
((((long)in[12 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[13 + inPos]) << 6) & 16383L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get( 1 + inPos)) << 8) & 16383L);
out[ 1 + outPos] =
// [76______]
// [____________10]
((((long)in.get( 1 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get( 2 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get( 3 + inPos)) << 10) & 16383L);
out[ 2 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get( 4 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get( 5 + inPos)) << 12) & 16383L);
out[ 3 + outPos] =
// [765432__]
// [________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L);
out[ 4 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get( 8 + inPos)) << 8) & 16383L);
out[ 5 + outPos] =
// [76______]
// [____________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(10 + inPos)) << 10) & 16383L);
out[ 6 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(12 + inPos)) << 12) & 16383L);
out[ 7 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(12 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(13 + inPos)) << 6) & 16383L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[ 1 + inPos]) << 8) & 16383L);
out[ 1 + outPos] =
// [76______]
// [____________10]
((((long)in[ 1 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[ 2 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[ 3 + inPos]) << 10) & 16383L);
out[ 2 + outPos] =
// [7654____]
// [__________3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[ 4 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[ 5 + inPos]) << 12) & 16383L);
out[ 3 + outPos] =
// [765432__]
// [________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L);
out[ 4 + outPos] =
// [76543210]
// [______76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[ 8 + inPos]) << 8) & 16383L);
out[ 5 + outPos] =
// [76______]
// [____________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[10 + inPos]) << 10) & 16383L);
out[ 6 + outPos] =
// [7654____]
// [__________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[12 + inPos]) << 12) & 16383L);
out[ 7 + outPos] =
// [765432__]
// [________543210]
((((long)in[12 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[13 + inPos]) << 6) & 16383L);
out[ 8 + outPos] =
// [76543210]
// [______76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[15 + inPos]) << 8) & 16383L);
out[ 9 + outPos] =
// [76______]
// [____________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[17 + inPos]) << 10) & 16383L);
out[10 + outPos] =
// [7654____]
// [__________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[19 + inPos]) << 12) & 16383L);
out[11 + outPos] =
// [765432__]
// [________543210]
((((long)in[19 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[20 + inPos]) << 6) & 16383L);
out[12 + outPos] =
// [76543210]
// [______76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[22 + inPos]) << 8) & 16383L);
out[13 + outPos] =
// [76______]
// [____________10]
((((long)in[22 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[23 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[24 + inPos]) << 10) & 16383L);
out[14 + outPos] =
// [7654____]
// [__________3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[25 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[26 + inPos]) << 12) & 16383L);
out[15 + outPos] =
// [765432__]
// [________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[27 + inPos]) << 6) & 16383L);
out[16 + outPos] =
// [76543210]
// [______76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[29 + inPos]) << 8) & 16383L);
out[17 + outPos] =
// [76______]
// [____________10]
((((long)in[29 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[30 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[31 + inPos]) << 10) & 16383L);
out[18 + outPos] =
// [7654____]
// [__________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[33 + inPos]) << 12) & 16383L);
out[19 + outPos] =
// [765432__]
// [________543210]
((((long)in[33 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[34 + inPos]) << 6) & 16383L);
out[20 + outPos] =
// [76543210]
// [______76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[36 + inPos]) << 8) & 16383L);
out[21 + outPos] =
// [76______]
// [____________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[38 + inPos]) << 10) & 16383L);
out[22 + outPos] =
// [7654____]
// [__________3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[39 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[40 + inPos]) << 12) & 16383L);
out[23 + outPos] =
// [765432__]
// [________543210]
((((long)in[40 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[41 + inPos]) << 6) & 16383L);
out[24 + outPos] =
// [76543210]
// [______76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[43 + inPos]) << 8) & 16383L);
out[25 + outPos] =
// [76______]
// [____________10]
((((long)in[43 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[44 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[45 + inPos]) << 10) & 16383L);
out[26 + outPos] =
// [7654____]
// [__________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[47 + inPos]) << 12) & 16383L);
out[27 + outPos] =
// [765432__]
// [________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[48 + inPos]) << 6) & 16383L);
out[28 + outPos] =
// [76543210]
// [______76543210]
((((long)in[49 + inPos]) ) & 255L)
| // [__543210]
// [321098________]
((((long)in[50 + inPos]) << 8) & 16383L);
out[29 + outPos] =
// [76______]
// [____________10]
((((long)in[50 + inPos]) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in[51 + inPos]) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in[52 + inPos]) << 10) & 16383L);
out[30 + outPos] =
// [7654____]
// [__________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in[54 + inPos]) << 12) & 16383L);
out[31 + outPos] =
// [765432__]
// [________543210]
((((long)in[54 + inPos]) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in[55 + inPos]) << 6) & 16383L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get( 1 + inPos)) << 8) & 16383L);
out[ 1 + outPos] =
// [76______]
// [____________10]
((((long)in.get( 1 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get( 2 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get( 3 + inPos)) << 10) & 16383L);
out[ 2 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get( 4 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get( 5 + inPos)) << 12) & 16383L);
out[ 3 + outPos] =
// [765432__]
// [________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L);
out[ 4 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get( 8 + inPos)) << 8) & 16383L);
out[ 5 + outPos] =
// [76______]
// [____________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(10 + inPos)) << 10) & 16383L);
out[ 6 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(12 + inPos)) << 12) & 16383L);
out[ 7 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(12 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(13 + inPos)) << 6) & 16383L);
out[ 8 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(15 + inPos)) << 8) & 16383L);
out[ 9 + outPos] =
// [76______]
// [____________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(17 + inPos)) << 10) & 16383L);
out[10 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(19 + inPos)) << 12) & 16383L);
out[11 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(19 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(20 + inPos)) << 6) & 16383L);
out[12 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(22 + inPos)) << 8) & 16383L);
out[13 + outPos] =
// [76______]
// [____________10]
((((long)in.get(22 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(23 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(24 + inPos)) << 10) & 16383L);
out[14 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(25 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(26 + inPos)) << 12) & 16383L);
out[15 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L);
out[16 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(29 + inPos)) << 8) & 16383L);
out[17 + outPos] =
// [76______]
// [____________10]
((((long)in.get(29 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(30 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(31 + inPos)) << 10) & 16383L);
out[18 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(33 + inPos)) << 12) & 16383L);
out[19 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(33 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(34 + inPos)) << 6) & 16383L);
out[20 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(36 + inPos)) << 8) & 16383L);
out[21 + outPos] =
// [76______]
// [____________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(38 + inPos)) << 10) & 16383L);
out[22 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(39 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(40 + inPos)) << 12) & 16383L);
out[23 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(40 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(41 + inPos)) << 6) & 16383L);
out[24 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(43 + inPos)) << 8) & 16383L);
out[25 + outPos] =
// [76______]
// [____________10]
((((long)in.get(43 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(44 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(45 + inPos)) << 10) & 16383L);
out[26 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(47 + inPos)) << 12) & 16383L);
out[27 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L);
out[28 + outPos] =
// [76543210]
// [______76543210]
((((long)in.get(49 + inPos)) ) & 255L)
| // [__543210]
// [321098________]
((((long)in.get(50 + inPos)) << 8) & 16383L);
out[29 + outPos] =
// [76______]
// [____________10]
((((long)in.get(50 + inPos)) >> 6) & 3L)
| // [76543210]
// [____98765432__]
((((long)in.get(51 + inPos)) << 2) & 1023L)
| // [____3210]
// [3210__________]
((((long)in.get(52 + inPos)) << 10) & 16383L);
out[30 + outPos] =
// [7654____]
// [__________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [__10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [______10]
// [32____________]
((((long)in.get(54 + inPos)) << 12) & 16383L);
out[31 + outPos] =
// [765432__]
// [________543210]
((((long)in.get(54 + inPos)) >> 2) & 63L)
| // [76543210]
// [32109876______]
((((long)in.get(55 + inPos)) << 6) & 16383L);
}
}
private static final class Packer15 extends BytePackerForLong {
private Packer15() {
super(15);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______76543210]
((in[ 0 + inPos] & 32767L))) & 255);
out[ 1 + outPos] = (byte)((
// [_6543210]
// [4321098________]
((in[ 0 + inPos] & 32767L) >>> 8)
| // [7_______]
// [______________0]
((in[ 1 + inPos] & 32767L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______87654321_]
((in[ 1 + inPos] & 32767L) >>> 1)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [432109_________]
((in[ 1 + inPos] & 32767L) >>> 9)
| // [76______]
// [_____________10]
((in[ 2 + inPos] & 32767L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____98765432__]
((in[ 2 + inPos] & 32767L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [43210__________]
((in[ 2 + inPos] & 32767L) >>> 10)
| // [765_____]
// [____________210]
((in[ 3 + inPos] & 32767L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____09876543___]
((in[ 3 + inPos] & 32767L) >>> 3)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [4321___________]
((in[ 3 + inPos] & 32767L) >>> 11)
| // [7654____]
// [___________3210]
((in[ 4 + inPos] & 32767L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [___10987654____]
((in[ 4 + inPos] & 32767L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [432____________]
((in[ 4 + inPos] & 32767L) >>> 12)
| // [76543___]
// [__________43210]
((in[ 5 + inPos] & 32767L) << 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__21098765_____]
((in[ 5 + inPos] & 32767L) >>> 5)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [43_____________]
((in[ 5 + inPos] & 32767L) >>> 13)
| // [765432__]
// [_________543210]
((in[ 6 + inPos] & 32767L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_32109876______]
((in[ 6 + inPos] & 32767L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [4______________]
((in[ 6 + inPos] & 32767L) >>> 14)
| // [7654321_]
// [________6543210]
((in[ 7 + inPos] & 32767L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [43210987_______]
((in[ 7 + inPos] & 32767L) >>> 7)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______76543210]
((in[ 0 + inPos] & 32767L))) & 255);
out[ 1 + outPos] = (byte)((
// [_6543210]
// [4321098________]
((in[ 0 + inPos] & 32767L) >>> 8)
| // [7_______]
// [______________0]
((in[ 1 + inPos] & 32767L) << 7)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______87654321_]
((in[ 1 + inPos] & 32767L) >>> 1)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [432109_________]
((in[ 1 + inPos] & 32767L) >>> 9)
| // [76______]
// [_____________10]
((in[ 2 + inPos] & 32767L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____98765432__]
((in[ 2 + inPos] & 32767L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [43210__________]
((in[ 2 + inPos] & 32767L) >>> 10)
| // [765_____]
// [____________210]
((in[ 3 + inPos] & 32767L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____09876543___]
((in[ 3 + inPos] & 32767L) >>> 3)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [4321___________]
((in[ 3 + inPos] & 32767L) >>> 11)
| // [7654____]
// [___________3210]
((in[ 4 + inPos] & 32767L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [___10987654____]
((in[ 4 + inPos] & 32767L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [432____________]
((in[ 4 + inPos] & 32767L) >>> 12)
| // [76543___]
// [__________43210]
((in[ 5 + inPos] & 32767L) << 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__21098765_____]
((in[ 5 + inPos] & 32767L) >>> 5)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [43_____________]
((in[ 5 + inPos] & 32767L) >>> 13)
| // [765432__]
// [_________543210]
((in[ 6 + inPos] & 32767L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_32109876______]
((in[ 6 + inPos] & 32767L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [4______________]
((in[ 6 + inPos] & 32767L) >>> 14)
| // [7654321_]
// [________6543210]
((in[ 7 + inPos] & 32767L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [43210987_______]
((in[ 7 + inPos] & 32767L) >>> 7)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______76543210]
((in[ 8 + inPos] & 32767L))) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [4321098________]
((in[ 8 + inPos] & 32767L) >>> 8)
| // [7_______]
// [______________0]
((in[ 9 + inPos] & 32767L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______87654321_]
((in[ 9 + inPos] & 32767L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [432109_________]
((in[ 9 + inPos] & 32767L) >>> 9)
| // [76______]
// [_____________10]
((in[10 + inPos] & 32767L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____98765432__]
((in[10 + inPos] & 32767L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [43210__________]
((in[10 + inPos] & 32767L) >>> 10)
| // [765_____]
// [____________210]
((in[11 + inPos] & 32767L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____09876543___]
((in[11 + inPos] & 32767L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [4321___________]
((in[11 + inPos] & 32767L) >>> 11)
| // [7654____]
// [___________3210]
((in[12 + inPos] & 32767L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___10987654____]
((in[12 + inPos] & 32767L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [_____210]
// [432____________]
((in[12 + inPos] & 32767L) >>> 12)
| // [76543___]
// [__________43210]
((in[13 + inPos] & 32767L) << 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__21098765_____]
((in[13 + inPos] & 32767L) >>> 5)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [43_____________]
((in[13 + inPos] & 32767L) >>> 13)
| // [765432__]
// [_________543210]
((in[14 + inPos] & 32767L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_32109876______]
((in[14 + inPos] & 32767L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [_______0]
// [4______________]
((in[14 + inPos] & 32767L) >>> 14)
| // [7654321_]
// [________6543210]
((in[15 + inPos] & 32767L) << 1)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [43210987_______]
((in[15 + inPos] & 32767L) >>> 7)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______76543210]
((in[16 + inPos] & 32767L))) & 255);
out[31 + outPos] = (byte)((
// [_6543210]
// [4321098________]
((in[16 + inPos] & 32767L) >>> 8)
| // [7_______]
// [______________0]
((in[17 + inPos] & 32767L) << 7)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______87654321_]
((in[17 + inPos] & 32767L) >>> 1)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [432109_________]
((in[17 + inPos] & 32767L) >>> 9)
| // [76______]
// [_____________10]
((in[18 + inPos] & 32767L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____98765432__]
((in[18 + inPos] & 32767L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [___43210]
// [43210__________]
((in[18 + inPos] & 32767L) >>> 10)
| // [765_____]
// [____________210]
((in[19 + inPos] & 32767L) << 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____09876543___]
((in[19 + inPos] & 32767L) >>> 3)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [4321___________]
((in[19 + inPos] & 32767L) >>> 11)
| // [7654____]
// [___________3210]
((in[20 + inPos] & 32767L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___10987654____]
((in[20 + inPos] & 32767L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [432____________]
((in[20 + inPos] & 32767L) >>> 12)
| // [76543___]
// [__________43210]
((in[21 + inPos] & 32767L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__21098765_____]
((in[21 + inPos] & 32767L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [43_____________]
((in[21 + inPos] & 32767L) >>> 13)
| // [765432__]
// [_________543210]
((in[22 + inPos] & 32767L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_32109876______]
((in[22 + inPos] & 32767L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [_______0]
// [4______________]
((in[22 + inPos] & 32767L) >>> 14)
| // [7654321_]
// [________6543210]
((in[23 + inPos] & 32767L) << 1)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [43210987_______]
((in[23 + inPos] & 32767L) >>> 7)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_______76543210]
((in[24 + inPos] & 32767L))) & 255);
out[46 + outPos] = (byte)((
// [_6543210]
// [4321098________]
((in[24 + inPos] & 32767L) >>> 8)
| // [7_______]
// [______________0]
((in[25 + inPos] & 32767L) << 7)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______87654321_]
((in[25 + inPos] & 32767L) >>> 1)) & 255);
out[48 + outPos] = (byte)((
// [__543210]
// [432109_________]
((in[25 + inPos] & 32767L) >>> 9)
| // [76______]
// [_____________10]
((in[26 + inPos] & 32767L) << 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____98765432__]
((in[26 + inPos] & 32767L) >>> 2)) & 255);
out[50 + outPos] = (byte)((
// [___43210]
// [43210__________]
((in[26 + inPos] & 32767L) >>> 10)
| // [765_____]
// [____________210]
((in[27 + inPos] & 32767L) << 5)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____09876543___]
((in[27 + inPos] & 32767L) >>> 3)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [4321___________]
((in[27 + inPos] & 32767L) >>> 11)
| // [7654____]
// [___________3210]
((in[28 + inPos] & 32767L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [___10987654____]
((in[28 + inPos] & 32767L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [_____210]
// [432____________]
((in[28 + inPos] & 32767L) >>> 12)
| // [76543___]
// [__________43210]
((in[29 + inPos] & 32767L) << 3)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__21098765_____]
((in[29 + inPos] & 32767L) >>> 5)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [43_____________]
((in[29 + inPos] & 32767L) >>> 13)
| // [765432__]
// [_________543210]
((in[30 + inPos] & 32767L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_32109876______]
((in[30 + inPos] & 32767L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [_______0]
// [4______________]
((in[30 + inPos] & 32767L) >>> 14)
| // [7654321_]
// [________6543210]
((in[31 + inPos] & 32767L) << 1)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [43210987_______]
((in[31 + inPos] & 32767L) >>> 7)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in[ 1 + inPos]) << 8) & 32767L);
out[ 1 + outPos] =
// [7_______]
// [______________0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in[ 2 + inPos]) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in[ 3 + inPos]) << 9) & 32767L);
out[ 2 + outPos] =
// [76______]
// [_____________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in[ 5 + inPos]) << 10) & 32767L);
out[ 3 + outPos] =
// [765_____]
// [____________210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in[ 6 + inPos]) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in[ 7 + inPos]) << 11) & 32767L);
out[ 4 + outPos] =
// [7654____]
// [___________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in[ 9 + inPos]) << 12) & 32767L);
out[ 5 + outPos] =
// [76543___]
// [__________43210]
((((long)in[ 9 + inPos]) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in[10 + inPos]) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in[11 + inPos]) << 13) & 32767L);
out[ 6 + outPos] =
// [765432__]
// [_________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in[13 + inPos]) << 14) & 32767L);
out[ 7 + outPos] =
// [7654321_]
// [________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in.get( 1 + inPos)) << 8) & 32767L);
out[ 1 + outPos] =
// [7_______]
// [______________0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in.get( 2 + inPos)) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in.get( 3 + inPos)) << 9) & 32767L);
out[ 2 + outPos] =
// [76______]
// [_____________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in.get( 5 + inPos)) << 10) & 32767L);
out[ 3 + outPos] =
// [765_____]
// [____________210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in.get( 6 + inPos)) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in.get( 7 + inPos)) << 11) & 32767L);
out[ 4 + outPos] =
// [7654____]
// [___________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in.get( 9 + inPos)) << 12) & 32767L);
out[ 5 + outPos] =
// [76543___]
// [__________43210]
((((long)in.get( 9 + inPos)) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in.get(10 + inPos)) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in.get(11 + inPos)) << 13) & 32767L);
out[ 6 + outPos] =
// [765432__]
// [_________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in.get(13 + inPos)) << 14) & 32767L);
out[ 7 + outPos] =
// [7654321_]
// [________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in[ 1 + inPos]) << 8) & 32767L);
out[ 1 + outPos] =
// [7_______]
// [______________0]
((((long)in[ 1 + inPos]) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in[ 2 + inPos]) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in[ 3 + inPos]) << 9) & 32767L);
out[ 2 + outPos] =
// [76______]
// [_____________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in[ 5 + inPos]) << 10) & 32767L);
out[ 3 + outPos] =
// [765_____]
// [____________210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in[ 6 + inPos]) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in[ 7 + inPos]) << 11) & 32767L);
out[ 4 + outPos] =
// [7654____]
// [___________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in[ 9 + inPos]) << 12) & 32767L);
out[ 5 + outPos] =
// [76543___]
// [__________43210]
((((long)in[ 9 + inPos]) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in[10 + inPos]) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in[11 + inPos]) << 13) & 32767L);
out[ 6 + outPos] =
// [765432__]
// [_________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in[13 + inPos]) << 14) & 32767L);
out[ 7 + outPos] =
// [7654321_]
// [________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L);
out[ 8 + outPos] =
// [76543210]
// [_______76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in[16 + inPos]) << 8) & 32767L);
out[ 9 + outPos] =
// [7_______]
// [______________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in[17 + inPos]) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in[18 + inPos]) << 9) & 32767L);
out[10 + outPos] =
// [76______]
// [_____________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in[20 + inPos]) << 10) & 32767L);
out[11 + outPos] =
// [765_____]
// [____________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in[21 + inPos]) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in[22 + inPos]) << 11) & 32767L);
out[12 + outPos] =
// [7654____]
// [___________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in[24 + inPos]) << 12) & 32767L);
out[13 + outPos] =
// [76543___]
// [__________43210]
((((long)in[24 + inPos]) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in[25 + inPos]) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in[26 + inPos]) << 13) & 32767L);
out[14 + outPos] =
// [765432__]
// [_________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in[28 + inPos]) << 14) & 32767L);
out[15 + outPos] =
// [7654321_]
// [________6543210]
((((long)in[28 + inPos]) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in[29 + inPos]) << 7) & 32767L);
out[16 + outPos] =
// [76543210]
// [_______76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in[31 + inPos]) << 8) & 32767L);
out[17 + outPos] =
// [7_______]
// [______________0]
((((long)in[31 + inPos]) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in[32 + inPos]) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in[33 + inPos]) << 9) & 32767L);
out[18 + outPos] =
// [76______]
// [_____________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in[35 + inPos]) << 10) & 32767L);
out[19 + outPos] =
// [765_____]
// [____________210]
((((long)in[35 + inPos]) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in[36 + inPos]) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in[37 + inPos]) << 11) & 32767L);
out[20 + outPos] =
// [7654____]
// [___________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in[39 + inPos]) << 12) & 32767L);
out[21 + outPos] =
// [76543___]
// [__________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in[41 + inPos]) << 13) & 32767L);
out[22 + outPos] =
// [765432__]
// [_________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in[43 + inPos]) << 14) & 32767L);
out[23 + outPos] =
// [7654321_]
// [________6543210]
((((long)in[43 + inPos]) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in[44 + inPos]) << 7) & 32767L);
out[24 + outPos] =
// [76543210]
// [_______76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in[46 + inPos]) << 8) & 32767L);
out[25 + outPos] =
// [7_______]
// [______________0]
((((long)in[46 + inPos]) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in[47 + inPos]) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in[48 + inPos]) << 9) & 32767L);
out[26 + outPos] =
// [76______]
// [_____________10]
((((long)in[48 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in[49 + inPos]) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in[50 + inPos]) << 10) & 32767L);
out[27 + outPos] =
// [765_____]
// [____________210]
((((long)in[50 + inPos]) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in[51 + inPos]) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in[52 + inPos]) << 11) & 32767L);
out[28 + outPos] =
// [7654____]
// [___________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in[54 + inPos]) << 12) & 32767L);
out[29 + outPos] =
// [76543___]
// [__________43210]
((((long)in[54 + inPos]) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in[55 + inPos]) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in[56 + inPos]) << 13) & 32767L);
out[30 + outPos] =
// [765432__]
// [_________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in[58 + inPos]) << 14) & 32767L);
out[31 + outPos] =
// [7654321_]
// [________6543210]
((((long)in[58 + inPos]) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in[59 + inPos]) << 7) & 32767L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in.get( 1 + inPos)) << 8) & 32767L);
out[ 1 + outPos] =
// [7_______]
// [______________0]
((((long)in.get( 1 + inPos)) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in.get( 2 + inPos)) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in.get( 3 + inPos)) << 9) & 32767L);
out[ 2 + outPos] =
// [76______]
// [_____________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in.get( 5 + inPos)) << 10) & 32767L);
out[ 3 + outPos] =
// [765_____]
// [____________210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in.get( 6 + inPos)) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in.get( 7 + inPos)) << 11) & 32767L);
out[ 4 + outPos] =
// [7654____]
// [___________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in.get( 9 + inPos)) << 12) & 32767L);
out[ 5 + outPos] =
// [76543___]
// [__________43210]
((((long)in.get( 9 + inPos)) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in.get(10 + inPos)) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in.get(11 + inPos)) << 13) & 32767L);
out[ 6 + outPos] =
// [765432__]
// [_________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in.get(13 + inPos)) << 14) & 32767L);
out[ 7 + outPos] =
// [7654321_]
// [________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L);
out[ 8 + outPos] =
// [76543210]
// [_______76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in.get(16 + inPos)) << 8) & 32767L);
out[ 9 + outPos] =
// [7_______]
// [______________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in.get(18 + inPos)) << 9) & 32767L);
out[10 + outPos] =
// [76______]
// [_____________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in.get(20 + inPos)) << 10) & 32767L);
out[11 + outPos] =
// [765_____]
// [____________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in.get(22 + inPos)) << 11) & 32767L);
out[12 + outPos] =
// [7654____]
// [___________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in.get(24 + inPos)) << 12) & 32767L);
out[13 + outPos] =
// [76543___]
// [__________43210]
((((long)in.get(24 + inPos)) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in.get(25 + inPos)) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in.get(26 + inPos)) << 13) & 32767L);
out[14 + outPos] =
// [765432__]
// [_________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in.get(28 + inPos)) << 14) & 32767L);
out[15 + outPos] =
// [7654321_]
// [________6543210]
((((long)in.get(28 + inPos)) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in.get(29 + inPos)) << 7) & 32767L);
out[16 + outPos] =
// [76543210]
// [_______76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in.get(31 + inPos)) << 8) & 32767L);
out[17 + outPos] =
// [7_______]
// [______________0]
((((long)in.get(31 + inPos)) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in.get(32 + inPos)) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in.get(33 + inPos)) << 9) & 32767L);
out[18 + outPos] =
// [76______]
// [_____________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in.get(35 + inPos)) << 10) & 32767L);
out[19 + outPos] =
// [765_____]
// [____________210]
((((long)in.get(35 + inPos)) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in.get(36 + inPos)) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in.get(37 + inPos)) << 11) & 32767L);
out[20 + outPos] =
// [7654____]
// [___________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in.get(39 + inPos)) << 12) & 32767L);
out[21 + outPos] =
// [76543___]
// [__________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in.get(41 + inPos)) << 13) & 32767L);
out[22 + outPos] =
// [765432__]
// [_________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in.get(43 + inPos)) << 14) & 32767L);
out[23 + outPos] =
// [7654321_]
// [________6543210]
((((long)in.get(43 + inPos)) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in.get(44 + inPos)) << 7) & 32767L);
out[24 + outPos] =
// [76543210]
// [_______76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [_6543210]
// [4321098________]
((((long)in.get(46 + inPos)) << 8) & 32767L);
out[25 + outPos] =
// [7_______]
// [______________0]
((((long)in.get(46 + inPos)) >> 7) & 1L)
| // [76543210]
// [______87654321_]
((((long)in.get(47 + inPos)) << 1) & 511L)
| // [__543210]
// [432109_________]
((((long)in.get(48 + inPos)) << 9) & 32767L);
out[26 + outPos] =
// [76______]
// [_____________10]
((((long)in.get(48 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____98765432__]
((((long)in.get(49 + inPos)) << 2) & 1023L)
| // [___43210]
// [43210__________]
((((long)in.get(50 + inPos)) << 10) & 32767L);
out[27 + outPos] =
// [765_____]
// [____________210]
((((long)in.get(50 + inPos)) >> 5) & 7L)
| // [76543210]
// [____09876543___]
((((long)in.get(51 + inPos)) << 3) & 2047L)
| // [____3210]
// [4321___________]
((((long)in.get(52 + inPos)) << 11) & 32767L);
out[28 + outPos] =
// [7654____]
// [___________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [___10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [_____210]
// [432____________]
((((long)in.get(54 + inPos)) << 12) & 32767L);
out[29 + outPos] =
// [76543___]
// [__________43210]
((((long)in.get(54 + inPos)) >> 3) & 31L)
| // [76543210]
// [__21098765_____]
((((long)in.get(55 + inPos)) << 5) & 8191L)
| // [______10]
// [43_____________]
((((long)in.get(56 + inPos)) << 13) & 32767L);
out[30 + outPos] =
// [765432__]
// [_________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [_32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [_______0]
// [4______________]
((((long)in.get(58 + inPos)) << 14) & 32767L);
out[31 + outPos] =
// [7654321_]
// [________6543210]
((((long)in.get(58 + inPos)) >> 1) & 127L)
| // [76543210]
// [43210987_______]
((((long)in.get(59 + inPos)) << 7) & 32767L);
}
}
private static final class Packer16 extends BytePackerForLong {
private Packer16() {
super(16);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 0 + inPos] & 65535L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 0 + inPos] & 65535L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 1 + inPos] & 65535L))) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 1 + inPos] & 65535L) >>> 8)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 2 + inPos] & 65535L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 2 + inPos] & 65535L) >>> 8)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 3 + inPos] & 65535L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 3 + inPos] & 65535L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 4 + inPos] & 65535L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 4 + inPos] & 65535L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 5 + inPos] & 65535L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 5 + inPos] & 65535L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 6 + inPos] & 65535L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 6 + inPos] & 65535L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 7 + inPos] & 65535L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 7 + inPos] & 65535L) >>> 8)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 0 + inPos] & 65535L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 0 + inPos] & 65535L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 1 + inPos] & 65535L))) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 1 + inPos] & 65535L) >>> 8)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 2 + inPos] & 65535L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 2 + inPos] & 65535L) >>> 8)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 3 + inPos] & 65535L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 3 + inPos] & 65535L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 4 + inPos] & 65535L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 4 + inPos] & 65535L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 5 + inPos] & 65535L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 5 + inPos] & 65535L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 6 + inPos] & 65535L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 6 + inPos] & 65535L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 7 + inPos] & 65535L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 7 + inPos] & 65535L) >>> 8)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 8 + inPos] & 65535L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 8 + inPos] & 65535L) >>> 8)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[ 9 + inPos] & 65535L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[ 9 + inPos] & 65535L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[10 + inPos] & 65535L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[10 + inPos] & 65535L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[11 + inPos] & 65535L))) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[11 + inPos] & 65535L) >>> 8)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[12 + inPos] & 65535L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[12 + inPos] & 65535L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[13 + inPos] & 65535L))) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[13 + inPos] & 65535L) >>> 8)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[14 + inPos] & 65535L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[14 + inPos] & 65535L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[15 + inPos] & 65535L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[15 + inPos] & 65535L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[16 + inPos] & 65535L))) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[16 + inPos] & 65535L) >>> 8)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[17 + inPos] & 65535L))) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[17 + inPos] & 65535L) >>> 8)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[18 + inPos] & 65535L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[18 + inPos] & 65535L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[19 + inPos] & 65535L))) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[19 + inPos] & 65535L) >>> 8)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[20 + inPos] & 65535L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[20 + inPos] & 65535L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[21 + inPos] & 65535L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[21 + inPos] & 65535L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[22 + inPos] & 65535L))) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[22 + inPos] & 65535L) >>> 8)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[23 + inPos] & 65535L))) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[23 + inPos] & 65535L) >>> 8)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[24 + inPos] & 65535L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[24 + inPos] & 65535L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[25 + inPos] & 65535L))) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[25 + inPos] & 65535L) >>> 8)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[26 + inPos] & 65535L))) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[26 + inPos] & 65535L) >>> 8)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[27 + inPos] & 65535L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[27 + inPos] & 65535L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[28 + inPos] & 65535L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[28 + inPos] & 65535L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[29 + inPos] & 65535L))) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[29 + inPos] & 65535L) >>> 8)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[30 + inPos] & 65535L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[30 + inPos] & 65535L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________76543210]
((in[31 + inPos] & 65535L))) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [54321098________]
((in[31 + inPos] & 65535L) >>> 8)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L);
out[ 1 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 2 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 3 + inPos]) << 8) & 65535L);
out[ 2 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 4 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 5 + inPos]) << 8) & 65535L);
out[ 3 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L);
out[ 4 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L);
out[ 5 + outPos] =
// [76543210]
// [________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[11 + inPos]) << 8) & 65535L);
out[ 6 + outPos] =
// [76543210]
// [________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[13 + inPos]) << 8) & 65535L);
out[ 7 + outPos] =
// [76543210]
// [________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[15 + inPos]) << 8) & 65535L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L);
out[ 1 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 2 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 3 + inPos)) << 8) & 65535L);
out[ 2 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 4 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 5 + inPos)) << 8) & 65535L);
out[ 3 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L);
out[ 4 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L);
out[ 5 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L);
out[ 6 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L);
out[ 7 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L);
out[ 1 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 2 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 3 + inPos]) << 8) & 65535L);
out[ 2 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 4 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 5 + inPos]) << 8) & 65535L);
out[ 3 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L);
out[ 4 + outPos] =
// [76543210]
// [________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L);
out[ 5 + outPos] =
// [76543210]
// [________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[11 + inPos]) << 8) & 65535L);
out[ 6 + outPos] =
// [76543210]
// [________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[13 + inPos]) << 8) & 65535L);
out[ 7 + outPos] =
// [76543210]
// [________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[15 + inPos]) << 8) & 65535L);
out[ 8 + outPos] =
// [76543210]
// [________76543210]
((((long)in[16 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[17 + inPos]) << 8) & 65535L);
out[ 9 + outPos] =
// [76543210]
// [________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[19 + inPos]) << 8) & 65535L);
out[10 + outPos] =
// [76543210]
// [________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[21 + inPos]) << 8) & 65535L);
out[11 + outPos] =
// [76543210]
// [________76543210]
((((long)in[22 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[23 + inPos]) << 8) & 65535L);
out[12 + outPos] =
// [76543210]
// [________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[25 + inPos]) << 8) & 65535L);
out[13 + outPos] =
// [76543210]
// [________76543210]
((((long)in[26 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[27 + inPos]) << 8) & 65535L);
out[14 + outPos] =
// [76543210]
// [________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[29 + inPos]) << 8) & 65535L);
out[15 + outPos] =
// [76543210]
// [________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[31 + inPos]) << 8) & 65535L);
out[16 + outPos] =
// [76543210]
// [________76543210]
((((long)in[32 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[33 + inPos]) << 8) & 65535L);
out[17 + outPos] =
// [76543210]
// [________76543210]
((((long)in[34 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[35 + inPos]) << 8) & 65535L);
out[18 + outPos] =
// [76543210]
// [________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[37 + inPos]) << 8) & 65535L);
out[19 + outPos] =
// [76543210]
// [________76543210]
((((long)in[38 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[39 + inPos]) << 8) & 65535L);
out[20 + outPos] =
// [76543210]
// [________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[41 + inPos]) << 8) & 65535L);
out[21 + outPos] =
// [76543210]
// [________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[43 + inPos]) << 8) & 65535L);
out[22 + outPos] =
// [76543210]
// [________76543210]
((((long)in[44 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[45 + inPos]) << 8) & 65535L);
out[23 + outPos] =
// [76543210]
// [________76543210]
((((long)in[46 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[47 + inPos]) << 8) & 65535L);
out[24 + outPos] =
// [76543210]
// [________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[49 + inPos]) << 8) & 65535L);
out[25 + outPos] =
// [76543210]
// [________76543210]
((((long)in[50 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[51 + inPos]) << 8) & 65535L);
out[26 + outPos] =
// [76543210]
// [________76543210]
((((long)in[52 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[53 + inPos]) << 8) & 65535L);
out[27 + outPos] =
// [76543210]
// [________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[55 + inPos]) << 8) & 65535L);
out[28 + outPos] =
// [76543210]
// [________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[57 + inPos]) << 8) & 65535L);
out[29 + outPos] =
// [76543210]
// [________76543210]
((((long)in[58 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[59 + inPos]) << 8) & 65535L);
out[30 + outPos] =
// [76543210]
// [________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[61 + inPos]) << 8) & 65535L);
out[31 + outPos] =
// [76543210]
// [________76543210]
((((long)in[62 + inPos]) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in[63 + inPos]) << 8) & 65535L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L);
out[ 1 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 2 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 3 + inPos)) << 8) & 65535L);
out[ 2 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 4 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 5 + inPos)) << 8) & 65535L);
out[ 3 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L);
out[ 4 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L);
out[ 5 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L);
out[ 6 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L);
out[ 7 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L);
out[ 8 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(16 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(17 + inPos)) << 8) & 65535L);
out[ 9 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L);
out[10 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L);
out[11 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(22 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(23 + inPos)) << 8) & 65535L);
out[12 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L);
out[13 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(26 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(27 + inPos)) << 8) & 65535L);
out[14 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L);
out[15 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L);
out[16 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(32 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(33 + inPos)) << 8) & 65535L);
out[17 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(34 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(35 + inPos)) << 8) & 65535L);
out[18 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L);
out[19 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(38 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(39 + inPos)) << 8) & 65535L);
out[20 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L);
out[21 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L);
out[22 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(44 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(45 + inPos)) << 8) & 65535L);
out[23 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(46 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(47 + inPos)) << 8) & 65535L);
out[24 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L);
out[25 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(50 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(51 + inPos)) << 8) & 65535L);
out[26 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(52 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(53 + inPos)) << 8) & 65535L);
out[27 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L);
out[28 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L);
out[29 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(58 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(59 + inPos)) << 8) & 65535L);
out[30 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L);
out[31 + outPos] =
// [76543210]
// [________76543210]
((((long)in.get(62 + inPos)) ) & 255L)
| // [76543210]
// [54321098________]
((((long)in.get(63 + inPos)) << 8) & 65535L);
}
}
private static final class Packer17 extends BytePackerForLong {
private Packer17() {
super(17);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________76543210]
((in[ 0 + inPos] & 131071L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_54321098________]
((in[ 0 + inPos] & 131071L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_______0]
// [6________________]
((in[ 0 + inPos] & 131071L) >>> 16)
| // [7654321_]
// [__________6543210]
((in[ 1 + inPos] & 131071L) << 1)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__43210987_______]
((in[ 1 + inPos] & 131071L) >>> 7)) & 255);
out[ 4 + outPos] = (byte)((
// [______10]
// [65_______________]
((in[ 1 + inPos] & 131071L) >>> 15)
| // [765432__]
// [___________543210]
((in[ 2 + inPos] & 131071L) << 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___32109876______]
((in[ 2 + inPos] & 131071L) >>> 6)) & 255);
out[ 6 + outPos] = (byte)((
// [_____210]
// [654______________]
((in[ 2 + inPos] & 131071L) >>> 14)
| // [76543___]
// [____________43210]
((in[ 3 + inPos] & 131071L) << 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____21098765_____]
((in[ 3 + inPos] & 131071L) >>> 5)) & 255);
out[ 8 + outPos] = (byte)((
// [____3210]
// [6543_____________]
((in[ 3 + inPos] & 131071L) >>> 13)
| // [7654____]
// [_____________3210]
((in[ 4 + inPos] & 131071L) << 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_____10987654____]
((in[ 4 + inPos] & 131071L) >>> 4)) & 255);
out[10 + outPos] = (byte)((
// [___43210]
// [65432____________]
((in[ 4 + inPos] & 131071L) >>> 12)
| // [765_____]
// [______________210]
((in[ 5 + inPos] & 131071L) << 5)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______09876543___]
((in[ 5 + inPos] & 131071L) >>> 3)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [654321___________]
((in[ 5 + inPos] & 131071L) >>> 11)
| // [76______]
// [_______________10]
((in[ 6 + inPos] & 131071L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_______98765432__]
((in[ 6 + inPos] & 131071L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [_6543210]
// [6543210__________]
((in[ 6 + inPos] & 131071L) >>> 10)
| // [7_______]
// [________________0]
((in[ 7 + inPos] & 131071L) << 7)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________87654321_]
((in[ 7 + inPos] & 131071L) >>> 1)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [65432109_________]
((in[ 7 + inPos] & 131071L) >>> 9)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________76543210]
((in[ 0 + inPos] & 131071L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_54321098________]
((in[ 0 + inPos] & 131071L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_______0]
// [6________________]
((in[ 0 + inPos] & 131071L) >>> 16)
| // [7654321_]
// [__________6543210]
((in[ 1 + inPos] & 131071L) << 1)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__43210987_______]
((in[ 1 + inPos] & 131071L) >>> 7)) & 255);
out[ 4 + outPos] = (byte)((
// [______10]
// [65_______________]
((in[ 1 + inPos] & 131071L) >>> 15)
| // [765432__]
// [___________543210]
((in[ 2 + inPos] & 131071L) << 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___32109876______]
((in[ 2 + inPos] & 131071L) >>> 6)) & 255);
out[ 6 + outPos] = (byte)((
// [_____210]
// [654______________]
((in[ 2 + inPos] & 131071L) >>> 14)
| // [76543___]
// [____________43210]
((in[ 3 + inPos] & 131071L) << 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____21098765_____]
((in[ 3 + inPos] & 131071L) >>> 5)) & 255);
out[ 8 + outPos] = (byte)((
// [____3210]
// [6543_____________]
((in[ 3 + inPos] & 131071L) >>> 13)
| // [7654____]
// [_____________3210]
((in[ 4 + inPos] & 131071L) << 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_____10987654____]
((in[ 4 + inPos] & 131071L) >>> 4)) & 255);
out[10 + outPos] = (byte)((
// [___43210]
// [65432____________]
((in[ 4 + inPos] & 131071L) >>> 12)
| // [765_____]
// [______________210]
((in[ 5 + inPos] & 131071L) << 5)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______09876543___]
((in[ 5 + inPos] & 131071L) >>> 3)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [654321___________]
((in[ 5 + inPos] & 131071L) >>> 11)
| // [76______]
// [_______________10]
((in[ 6 + inPos] & 131071L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_______98765432__]
((in[ 6 + inPos] & 131071L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [_6543210]
// [6543210__________]
((in[ 6 + inPos] & 131071L) >>> 10)
| // [7_______]
// [________________0]
((in[ 7 + inPos] & 131071L) << 7)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________87654321_]
((in[ 7 + inPos] & 131071L) >>> 1)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [65432109_________]
((in[ 7 + inPos] & 131071L) >>> 9)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_________76543210]
((in[ 8 + inPos] & 131071L))) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_54321098________]
((in[ 8 + inPos] & 131071L) >>> 8)) & 255);
out[19 + outPos] = (byte)((
// [_______0]
// [6________________]
((in[ 8 + inPos] & 131071L) >>> 16)
| // [7654321_]
// [__________6543210]
((in[ 9 + inPos] & 131071L) << 1)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__43210987_______]
((in[ 9 + inPos] & 131071L) >>> 7)) & 255);
out[21 + outPos] = (byte)((
// [______10]
// [65_______________]
((in[ 9 + inPos] & 131071L) >>> 15)
| // [765432__]
// [___________543210]
((in[10 + inPos] & 131071L) << 2)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___32109876______]
((in[10 + inPos] & 131071L) >>> 6)) & 255);
out[23 + outPos] = (byte)((
// [_____210]
// [654______________]
((in[10 + inPos] & 131071L) >>> 14)
| // [76543___]
// [____________43210]
((in[11 + inPos] & 131071L) << 3)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____21098765_____]
((in[11 + inPos] & 131071L) >>> 5)) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [6543_____________]
((in[11 + inPos] & 131071L) >>> 13)
| // [7654____]
// [_____________3210]
((in[12 + inPos] & 131071L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_____10987654____]
((in[12 + inPos] & 131071L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [___43210]
// [65432____________]
((in[12 + inPos] & 131071L) >>> 12)
| // [765_____]
// [______________210]
((in[13 + inPos] & 131071L) << 5)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______09876543___]
((in[13 + inPos] & 131071L) >>> 3)) & 255);
out[29 + outPos] = (byte)((
// [__543210]
// [654321___________]
((in[13 + inPos] & 131071L) >>> 11)
| // [76______]
// [_______________10]
((in[14 + inPos] & 131071L) << 6)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______98765432__]
((in[14 + inPos] & 131071L) >>> 2)) & 255);
out[31 + outPos] = (byte)((
// [_6543210]
// [6543210__________]
((in[14 + inPos] & 131071L) >>> 10)
| // [7_______]
// [________________0]
((in[15 + inPos] & 131071L) << 7)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________87654321_]
((in[15 + inPos] & 131071L) >>> 1)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [65432109_________]
((in[15 + inPos] & 131071L) >>> 9)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_________76543210]
((in[16 + inPos] & 131071L))) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_54321098________]
((in[16 + inPos] & 131071L) >>> 8)) & 255);
out[36 + outPos] = (byte)((
// [_______0]
// [6________________]
((in[16 + inPos] & 131071L) >>> 16)
| // [7654321_]
// [__________6543210]
((in[17 + inPos] & 131071L) << 1)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__43210987_______]
((in[17 + inPos] & 131071L) >>> 7)) & 255);
out[38 + outPos] = (byte)((
// [______10]
// [65_______________]
((in[17 + inPos] & 131071L) >>> 15)
| // [765432__]
// [___________543210]
((in[18 + inPos] & 131071L) << 2)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [___32109876______]
((in[18 + inPos] & 131071L) >>> 6)) & 255);
out[40 + outPos] = (byte)((
// [_____210]
// [654______________]
((in[18 + inPos] & 131071L) >>> 14)
| // [76543___]
// [____________43210]
((in[19 + inPos] & 131071L) << 3)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____21098765_____]
((in[19 + inPos] & 131071L) >>> 5)) & 255);
out[42 + outPos] = (byte)((
// [____3210]
// [6543_____________]
((in[19 + inPos] & 131071L) >>> 13)
| // [7654____]
// [_____________3210]
((in[20 + inPos] & 131071L) << 4)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_____10987654____]
((in[20 + inPos] & 131071L) >>> 4)) & 255);
out[44 + outPos] = (byte)((
// [___43210]
// [65432____________]
((in[20 + inPos] & 131071L) >>> 12)
| // [765_____]
// [______________210]
((in[21 + inPos] & 131071L) << 5)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______09876543___]
((in[21 + inPos] & 131071L) >>> 3)) & 255);
out[46 + outPos] = (byte)((
// [__543210]
// [654321___________]
((in[21 + inPos] & 131071L) >>> 11)
| // [76______]
// [_______________10]
((in[22 + inPos] & 131071L) << 6)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______98765432__]
((in[22 + inPos] & 131071L) >>> 2)) & 255);
out[48 + outPos] = (byte)((
// [_6543210]
// [6543210__________]
((in[22 + inPos] & 131071L) >>> 10)
| // [7_______]
// [________________0]
((in[23 + inPos] & 131071L) << 7)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________87654321_]
((in[23 + inPos] & 131071L) >>> 1)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [65432109_________]
((in[23 + inPos] & 131071L) >>> 9)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_________76543210]
((in[24 + inPos] & 131071L))) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_54321098________]
((in[24 + inPos] & 131071L) >>> 8)) & 255);
out[53 + outPos] = (byte)((
// [_______0]
// [6________________]
((in[24 + inPos] & 131071L) >>> 16)
| // [7654321_]
// [__________6543210]
((in[25 + inPos] & 131071L) << 1)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__43210987_______]
((in[25 + inPos] & 131071L) >>> 7)) & 255);
out[55 + outPos] = (byte)((
// [______10]
// [65_______________]
((in[25 + inPos] & 131071L) >>> 15)
| // [765432__]
// [___________543210]
((in[26 + inPos] & 131071L) << 2)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [___32109876______]
((in[26 + inPos] & 131071L) >>> 6)) & 255);
out[57 + outPos] = (byte)((
// [_____210]
// [654______________]
((in[26 + inPos] & 131071L) >>> 14)
| // [76543___]
// [____________43210]
((in[27 + inPos] & 131071L) << 3)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____21098765_____]
((in[27 + inPos] & 131071L) >>> 5)) & 255);
out[59 + outPos] = (byte)((
// [____3210]
// [6543_____________]
((in[27 + inPos] & 131071L) >>> 13)
| // [7654____]
// [_____________3210]
((in[28 + inPos] & 131071L) << 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_____10987654____]
((in[28 + inPos] & 131071L) >>> 4)) & 255);
out[61 + outPos] = (byte)((
// [___43210]
// [65432____________]
((in[28 + inPos] & 131071L) >>> 12)
| // [765_____]
// [______________210]
((in[29 + inPos] & 131071L) << 5)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______09876543___]
((in[29 + inPos] & 131071L) >>> 3)) & 255);
out[63 + outPos] = (byte)((
// [__543210]
// [654321___________]
((in[29 + inPos] & 131071L) >>> 11)
| // [76______]
// [_______________10]
((in[30 + inPos] & 131071L) << 6)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_______98765432__]
((in[30 + inPos] & 131071L) >>> 2)) & 255);
out[65 + outPos] = (byte)((
// [_6543210]
// [6543210__________]
((in[30 + inPos] & 131071L) >>> 10)
| // [7_______]
// [________________0]
((in[31 + inPos] & 131071L) << 7)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________87654321_]
((in[31 + inPos] & 131071L) >>> 1)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [65432109_________]
((in[31 + inPos] & 131071L) >>> 9)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in[ 2 + inPos]) << 16) & 131071L);
out[ 1 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in[ 2 + inPos]) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in[ 3 + inPos]) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in[ 4 + inPos]) << 15) & 131071L);
out[ 2 + outPos] =
// [765432__]
// [___________543210]
((((long)in[ 4 + inPos]) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in[ 5 + inPos]) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in[ 6 + inPos]) << 14) & 131071L);
out[ 3 + outPos] =
// [76543___]
// [____________43210]
((((long)in[ 6 + inPos]) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in[ 7 + inPos]) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in[ 8 + inPos]) << 13) & 131071L);
out[ 4 + outPos] =
// [7654____]
// [_____________3210]
((((long)in[ 8 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in[ 9 + inPos]) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in[10 + inPos]) << 12) & 131071L);
out[ 5 + outPos] =
// [765_____]
// [______________210]
((((long)in[10 + inPos]) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in[11 + inPos]) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in[12 + inPos]) << 11) & 131071L);
out[ 6 + outPos] =
// [76______]
// [_______________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in[14 + inPos]) << 10) & 131071L);
out[ 7 + outPos] =
// [7_______]
// [________________0]
((((long)in[14 + inPos]) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in[15 + inPos]) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in[16 + inPos]) << 9) & 131071L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in.get( 2 + inPos)) << 16) & 131071L);
out[ 1 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in.get( 2 + inPos)) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in.get( 3 + inPos)) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in.get( 4 + inPos)) << 15) & 131071L);
out[ 2 + outPos] =
// [765432__]
// [___________543210]
((((long)in.get( 4 + inPos)) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in.get( 5 + inPos)) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in.get( 6 + inPos)) << 14) & 131071L);
out[ 3 + outPos] =
// [76543___]
// [____________43210]
((((long)in.get( 6 + inPos)) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in.get( 7 + inPos)) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in.get( 8 + inPos)) << 13) & 131071L);
out[ 4 + outPos] =
// [7654____]
// [_____________3210]
((((long)in.get( 8 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in.get( 9 + inPos)) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in.get(10 + inPos)) << 12) & 131071L);
out[ 5 + outPos] =
// [765_____]
// [______________210]
((((long)in.get(10 + inPos)) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in.get(11 + inPos)) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in.get(12 + inPos)) << 11) & 131071L);
out[ 6 + outPos] =
// [76______]
// [_______________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in.get(14 + inPos)) << 10) & 131071L);
out[ 7 + outPos] =
// [7_______]
// [________________0]
((((long)in.get(14 + inPos)) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in.get(15 + inPos)) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in.get(16 + inPos)) << 9) & 131071L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in[ 2 + inPos]) << 16) & 131071L);
out[ 1 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in[ 2 + inPos]) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in[ 3 + inPos]) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in[ 4 + inPos]) << 15) & 131071L);
out[ 2 + outPos] =
// [765432__]
// [___________543210]
((((long)in[ 4 + inPos]) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in[ 5 + inPos]) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in[ 6 + inPos]) << 14) & 131071L);
out[ 3 + outPos] =
// [76543___]
// [____________43210]
((((long)in[ 6 + inPos]) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in[ 7 + inPos]) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in[ 8 + inPos]) << 13) & 131071L);
out[ 4 + outPos] =
// [7654____]
// [_____________3210]
((((long)in[ 8 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in[ 9 + inPos]) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in[10 + inPos]) << 12) & 131071L);
out[ 5 + outPos] =
// [765_____]
// [______________210]
((((long)in[10 + inPos]) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in[11 + inPos]) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in[12 + inPos]) << 11) & 131071L);
out[ 6 + outPos] =
// [76______]
// [_______________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in[14 + inPos]) << 10) & 131071L);
out[ 7 + outPos] =
// [7_______]
// [________________0]
((((long)in[14 + inPos]) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in[15 + inPos]) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in[16 + inPos]) << 9) & 131071L);
out[ 8 + outPos] =
// [76543210]
// [_________76543210]
((((long)in[17 + inPos]) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in[18 + inPos]) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in[19 + inPos]) << 16) & 131071L);
out[ 9 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in[19 + inPos]) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in[20 + inPos]) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in[21 + inPos]) << 15) & 131071L);
out[10 + outPos] =
// [765432__]
// [___________543210]
((((long)in[21 + inPos]) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in[22 + inPos]) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in[23 + inPos]) << 14) & 131071L);
out[11 + outPos] =
// [76543___]
// [____________43210]
((((long)in[23 + inPos]) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in[24 + inPos]) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in[25 + inPos]) << 13) & 131071L);
out[12 + outPos] =
// [7654____]
// [_____________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in[26 + inPos]) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in[27 + inPos]) << 12) & 131071L);
out[13 + outPos] =
// [765_____]
// [______________210]
((((long)in[27 + inPos]) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in[28 + inPos]) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in[29 + inPos]) << 11) & 131071L);
out[14 + outPos] =
// [76______]
// [_______________10]
((((long)in[29 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in[30 + inPos]) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in[31 + inPos]) << 10) & 131071L);
out[15 + outPos] =
// [7_______]
// [________________0]
((((long)in[31 + inPos]) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in[32 + inPos]) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in[33 + inPos]) << 9) & 131071L);
out[16 + outPos] =
// [76543210]
// [_________76543210]
((((long)in[34 + inPos]) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in[35 + inPos]) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in[36 + inPos]) << 16) & 131071L);
out[17 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in[36 + inPos]) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in[37 + inPos]) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in[38 + inPos]) << 15) & 131071L);
out[18 + outPos] =
// [765432__]
// [___________543210]
((((long)in[38 + inPos]) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in[39 + inPos]) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in[40 + inPos]) << 14) & 131071L);
out[19 + outPos] =
// [76543___]
// [____________43210]
((((long)in[40 + inPos]) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in[41 + inPos]) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in[42 + inPos]) << 13) & 131071L);
out[20 + outPos] =
// [7654____]
// [_____________3210]
((((long)in[42 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in[43 + inPos]) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in[44 + inPos]) << 12) & 131071L);
out[21 + outPos] =
// [765_____]
// [______________210]
((((long)in[44 + inPos]) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in[45 + inPos]) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in[46 + inPos]) << 11) & 131071L);
out[22 + outPos] =
// [76______]
// [_______________10]
((((long)in[46 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in[47 + inPos]) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in[48 + inPos]) << 10) & 131071L);
out[23 + outPos] =
// [7_______]
// [________________0]
((((long)in[48 + inPos]) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in[49 + inPos]) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in[50 + inPos]) << 9) & 131071L);
out[24 + outPos] =
// [76543210]
// [_________76543210]
((((long)in[51 + inPos]) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in[52 + inPos]) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in[53 + inPos]) << 16) & 131071L);
out[25 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in[53 + inPos]) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in[54 + inPos]) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in[55 + inPos]) << 15) & 131071L);
out[26 + outPos] =
// [765432__]
// [___________543210]
((((long)in[55 + inPos]) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in[56 + inPos]) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in[57 + inPos]) << 14) & 131071L);
out[27 + outPos] =
// [76543___]
// [____________43210]
((((long)in[57 + inPos]) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in[58 + inPos]) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in[59 + inPos]) << 13) & 131071L);
out[28 + outPos] =
// [7654____]
// [_____________3210]
((((long)in[59 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in[60 + inPos]) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in[61 + inPos]) << 12) & 131071L);
out[29 + outPos] =
// [765_____]
// [______________210]
((((long)in[61 + inPos]) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in[62 + inPos]) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in[63 + inPos]) << 11) & 131071L);
out[30 + outPos] =
// [76______]
// [_______________10]
((((long)in[63 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in[64 + inPos]) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in[65 + inPos]) << 10) & 131071L);
out[31 + outPos] =
// [7_______]
// [________________0]
((((long)in[65 + inPos]) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in[66 + inPos]) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in[67 + inPos]) << 9) & 131071L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in.get( 2 + inPos)) << 16) & 131071L);
out[ 1 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in.get( 2 + inPos)) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in.get( 3 + inPos)) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in.get( 4 + inPos)) << 15) & 131071L);
out[ 2 + outPos] =
// [765432__]
// [___________543210]
((((long)in.get( 4 + inPos)) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in.get( 5 + inPos)) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in.get( 6 + inPos)) << 14) & 131071L);
out[ 3 + outPos] =
// [76543___]
// [____________43210]
((((long)in.get( 6 + inPos)) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in.get( 7 + inPos)) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in.get( 8 + inPos)) << 13) & 131071L);
out[ 4 + outPos] =
// [7654____]
// [_____________3210]
((((long)in.get( 8 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in.get( 9 + inPos)) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in.get(10 + inPos)) << 12) & 131071L);
out[ 5 + outPos] =
// [765_____]
// [______________210]
((((long)in.get(10 + inPos)) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in.get(11 + inPos)) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in.get(12 + inPos)) << 11) & 131071L);
out[ 6 + outPos] =
// [76______]
// [_______________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in.get(14 + inPos)) << 10) & 131071L);
out[ 7 + outPos] =
// [7_______]
// [________________0]
((((long)in.get(14 + inPos)) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in.get(15 + inPos)) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in.get(16 + inPos)) << 9) & 131071L);
out[ 8 + outPos] =
// [76543210]
// [_________76543210]
((((long)in.get(17 + inPos)) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in.get(18 + inPos)) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in.get(19 + inPos)) << 16) & 131071L);
out[ 9 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in.get(19 + inPos)) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in.get(20 + inPos)) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in.get(21 + inPos)) << 15) & 131071L);
out[10 + outPos] =
// [765432__]
// [___________543210]
((((long)in.get(21 + inPos)) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in.get(22 + inPos)) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in.get(23 + inPos)) << 14) & 131071L);
out[11 + outPos] =
// [76543___]
// [____________43210]
((((long)in.get(23 + inPos)) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in.get(24 + inPos)) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in.get(25 + inPos)) << 13) & 131071L);
out[12 + outPos] =
// [7654____]
// [_____________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in.get(27 + inPos)) << 12) & 131071L);
out[13 + outPos] =
// [765_____]
// [______________210]
((((long)in.get(27 + inPos)) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in.get(28 + inPos)) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in.get(29 + inPos)) << 11) & 131071L);
out[14 + outPos] =
// [76______]
// [_______________10]
((((long)in.get(29 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in.get(30 + inPos)) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in.get(31 + inPos)) << 10) & 131071L);
out[15 + outPos] =
// [7_______]
// [________________0]
((((long)in.get(31 + inPos)) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in.get(32 + inPos)) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in.get(33 + inPos)) << 9) & 131071L);
out[16 + outPos] =
// [76543210]
// [_________76543210]
((((long)in.get(34 + inPos)) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in.get(35 + inPos)) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in.get(36 + inPos)) << 16) & 131071L);
out[17 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in.get(36 + inPos)) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in.get(37 + inPos)) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in.get(38 + inPos)) << 15) & 131071L);
out[18 + outPos] =
// [765432__]
// [___________543210]
((((long)in.get(38 + inPos)) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in.get(39 + inPos)) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in.get(40 + inPos)) << 14) & 131071L);
out[19 + outPos] =
// [76543___]
// [____________43210]
((((long)in.get(40 + inPos)) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in.get(41 + inPos)) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in.get(42 + inPos)) << 13) & 131071L);
out[20 + outPos] =
// [7654____]
// [_____________3210]
((((long)in.get(42 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in.get(43 + inPos)) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in.get(44 + inPos)) << 12) & 131071L);
out[21 + outPos] =
// [765_____]
// [______________210]
((((long)in.get(44 + inPos)) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in.get(45 + inPos)) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in.get(46 + inPos)) << 11) & 131071L);
out[22 + outPos] =
// [76______]
// [_______________10]
((((long)in.get(46 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in.get(47 + inPos)) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in.get(48 + inPos)) << 10) & 131071L);
out[23 + outPos] =
// [7_______]
// [________________0]
((((long)in.get(48 + inPos)) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in.get(49 + inPos)) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in.get(50 + inPos)) << 9) & 131071L);
out[24 + outPos] =
// [76543210]
// [_________76543210]
((((long)in.get(51 + inPos)) ) & 255L)
| // [76543210]
// [_54321098________]
((((long)in.get(52 + inPos)) << 8) & 65535L)
| // [_______0]
// [6________________]
((((long)in.get(53 + inPos)) << 16) & 131071L);
out[25 + outPos] =
// [7654321_]
// [__________6543210]
((((long)in.get(53 + inPos)) >> 1) & 127L)
| // [76543210]
// [__43210987_______]
((((long)in.get(54 + inPos)) << 7) & 32767L)
| // [______10]
// [65_______________]
((((long)in.get(55 + inPos)) << 15) & 131071L);
out[26 + outPos] =
// [765432__]
// [___________543210]
((((long)in.get(55 + inPos)) >> 2) & 63L)
| // [76543210]
// [___32109876______]
((((long)in.get(56 + inPos)) << 6) & 16383L)
| // [_____210]
// [654______________]
((((long)in.get(57 + inPos)) << 14) & 131071L);
out[27 + outPos] =
// [76543___]
// [____________43210]
((((long)in.get(57 + inPos)) >> 3) & 31L)
| // [76543210]
// [____21098765_____]
((((long)in.get(58 + inPos)) << 5) & 8191L)
| // [____3210]
// [6543_____________]
((((long)in.get(59 + inPos)) << 13) & 131071L);
out[28 + outPos] =
// [7654____]
// [_____________3210]
((((long)in.get(59 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____10987654____]
((((long)in.get(60 + inPos)) << 4) & 4095L)
| // [___43210]
// [65432____________]
((((long)in.get(61 + inPos)) << 12) & 131071L);
out[29 + outPos] =
// [765_____]
// [______________210]
((((long)in.get(61 + inPos)) >> 5) & 7L)
| // [76543210]
// [______09876543___]
((((long)in.get(62 + inPos)) << 3) & 2047L)
| // [__543210]
// [654321___________]
((((long)in.get(63 + inPos)) << 11) & 131071L);
out[30 + outPos] =
// [76______]
// [_______________10]
((((long)in.get(63 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______98765432__]
((((long)in.get(64 + inPos)) << 2) & 1023L)
| // [_6543210]
// [6543210__________]
((((long)in.get(65 + inPos)) << 10) & 131071L);
out[31 + outPos] =
// [7_______]
// [________________0]
((((long)in.get(65 + inPos)) >> 7) & 1L)
| // [76543210]
// [________87654321_]
((((long)in.get(66 + inPos)) << 1) & 511L)
| // [76543210]
// [65432109_________]
((((long)in.get(67 + inPos)) << 9) & 131071L);
}
}
private static final class Packer18 extends BytePackerForLong {
private Packer18() {
super(18);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[ 0 + inPos] & 262143L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[ 0 + inPos] & 262143L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [76________________]
((in[ 0 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[ 1 + inPos] & 262143L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[ 1 + inPos] & 262143L) >>> 6)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[ 1 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[ 2 + inPos] & 262143L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[ 2 + inPos] & 262143L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[ 2 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[ 3 + inPos] & 262143L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[ 3 + inPos] & 262143L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[ 3 + inPos] & 262143L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[ 4 + inPos] & 262143L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[ 4 + inPos] & 262143L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [76________________]
((in[ 4 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[ 5 + inPos] & 262143L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[ 5 + inPos] & 262143L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[ 5 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[ 6 + inPos] & 262143L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[ 6 + inPos] & 262143L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[ 6 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[ 7 + inPos] & 262143L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[ 7 + inPos] & 262143L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[ 7 + inPos] & 262143L) >>> 10)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[ 0 + inPos] & 262143L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[ 0 + inPos] & 262143L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [______10]
// [76________________]
((in[ 0 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[ 1 + inPos] & 262143L) << 2)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[ 1 + inPos] & 262143L) >>> 6)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[ 1 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[ 2 + inPos] & 262143L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[ 2 + inPos] & 262143L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[ 2 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[ 3 + inPos] & 262143L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[ 3 + inPos] & 262143L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[ 3 + inPos] & 262143L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[ 4 + inPos] & 262143L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[ 4 + inPos] & 262143L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [76________________]
((in[ 4 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[ 5 + inPos] & 262143L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[ 5 + inPos] & 262143L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[ 5 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[ 6 + inPos] & 262143L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[ 6 + inPos] & 262143L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[ 6 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[ 7 + inPos] & 262143L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[ 7 + inPos] & 262143L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[ 7 + inPos] & 262143L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[ 8 + inPos] & 262143L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[ 8 + inPos] & 262143L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [76________________]
((in[ 8 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[ 9 + inPos] & 262143L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[ 9 + inPos] & 262143L) >>> 6)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[ 9 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[10 + inPos] & 262143L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[10 + inPos] & 262143L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[10 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[11 + inPos] & 262143L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[11 + inPos] & 262143L) >>> 2)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[11 + inPos] & 262143L) >>> 10)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[12 + inPos] & 262143L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[12 + inPos] & 262143L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [76________________]
((in[12 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[13 + inPos] & 262143L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[13 + inPos] & 262143L) >>> 6)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[13 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[14 + inPos] & 262143L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[14 + inPos] & 262143L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[14 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[15 + inPos] & 262143L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[15 + inPos] & 262143L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[15 + inPos] & 262143L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[16 + inPos] & 262143L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[16 + inPos] & 262143L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [______10]
// [76________________]
((in[16 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[17 + inPos] & 262143L) << 2)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[17 + inPos] & 262143L) >>> 6)) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[17 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[18 + inPos] & 262143L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[18 + inPos] & 262143L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[18 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[19 + inPos] & 262143L) << 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[19 + inPos] & 262143L) >>> 2)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[19 + inPos] & 262143L) >>> 10)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[20 + inPos] & 262143L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[20 + inPos] & 262143L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [76________________]
((in[20 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[21 + inPos] & 262143L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[21 + inPos] & 262143L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[21 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[22 + inPos] & 262143L) << 4)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[22 + inPos] & 262143L) >>> 4)) & 255);
out[51 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[22 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[23 + inPos] & 262143L) << 6)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[23 + inPos] & 262143L) >>> 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[23 + inPos] & 262143L) >>> 10)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[24 + inPos] & 262143L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[24 + inPos] & 262143L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [76________________]
((in[24 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[25 + inPos] & 262143L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[25 + inPos] & 262143L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[25 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[26 + inPos] & 262143L) << 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[26 + inPos] & 262143L) >>> 4)) & 255);
out[60 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[26 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[27 + inPos] & 262143L) << 6)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[27 + inPos] & 262143L) >>> 2)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[27 + inPos] & 262143L) >>> 10)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [__________76543210]
((in[28 + inPos] & 262143L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__54321098________]
((in[28 + inPos] & 262143L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [______10]
// [76________________]
((in[28 + inPos] & 262143L) >>> 16)
| // [765432__]
// [____________543210]
((in[29 + inPos] & 262143L) << 2)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____32109876______]
((in[29 + inPos] & 262143L) >>> 6)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [7654______________]
((in[29 + inPos] & 262143L) >>> 14)
| // [7654____]
// [______________3210]
((in[30 + inPos] & 262143L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [______10987654____]
((in[30 + inPos] & 262143L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [__543210]
// [765432____________]
((in[30 + inPos] & 262143L) >>> 12)
| // [76______]
// [________________10]
((in[31 + inPos] & 262143L) << 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________98765432__]
((in[31 + inPos] & 262143L) >>> 2)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [76543210__________]
((in[31 + inPos] & 262143L) >>> 10)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[ 2 + inPos]) << 16) & 262143L);
out[ 1 + outPos] =
// [765432__]
// [____________543210]
((((long)in[ 2 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[ 3 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[ 4 + inPos]) << 14) & 262143L);
out[ 2 + outPos] =
// [7654____]
// [______________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[ 6 + inPos]) << 12) & 262143L);
out[ 3 + outPos] =
// [76______]
// [________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L);
out[ 4 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[11 + inPos]) << 16) & 262143L);
out[ 5 + outPos] =
// [765432__]
// [____________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[13 + inPos]) << 14) & 262143L);
out[ 6 + outPos] =
// [7654____]
// [______________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[15 + inPos]) << 12) & 262143L);
out[ 7 + outPos] =
// [76______]
// [________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get( 2 + inPos)) << 16) & 262143L);
out[ 1 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get( 3 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get( 4 + inPos)) << 14) & 262143L);
out[ 2 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get( 6 + inPos)) << 12) & 262143L);
out[ 3 + outPos] =
// [76______]
// [________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L);
out[ 4 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(11 + inPos)) << 16) & 262143L);
out[ 5 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(13 + inPos)) << 14) & 262143L);
out[ 6 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(15 + inPos)) << 12) & 262143L);
out[ 7 + outPos] =
// [76______]
// [________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[ 2 + inPos]) << 16) & 262143L);
out[ 1 + outPos] =
// [765432__]
// [____________543210]
((((long)in[ 2 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[ 3 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[ 4 + inPos]) << 14) & 262143L);
out[ 2 + outPos] =
// [7654____]
// [______________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[ 6 + inPos]) << 12) & 262143L);
out[ 3 + outPos] =
// [76______]
// [________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L);
out[ 4 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[11 + inPos]) << 16) & 262143L);
out[ 5 + outPos] =
// [765432__]
// [____________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[13 + inPos]) << 14) & 262143L);
out[ 6 + outPos] =
// [7654____]
// [______________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[15 + inPos]) << 12) & 262143L);
out[ 7 + outPos] =
// [76______]
// [________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L);
out[ 8 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[20 + inPos]) << 16) & 262143L);
out[ 9 + outPos] =
// [765432__]
// [____________543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[21 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[22 + inPos]) << 14) & 262143L);
out[10 + outPos] =
// [7654____]
// [______________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[24 + inPos]) << 12) & 262143L);
out[11 + outPos] =
// [76______]
// [________________10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[25 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[26 + inPos]) << 10) & 262143L);
out[12 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[29 + inPos]) << 16) & 262143L);
out[13 + outPos] =
// [765432__]
// [____________543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[30 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[31 + inPos]) << 14) & 262143L);
out[14 + outPos] =
// [7654____]
// [______________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[33 + inPos]) << 12) & 262143L);
out[15 + outPos] =
// [76______]
// [________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L);
out[16 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[38 + inPos]) << 16) & 262143L);
out[17 + outPos] =
// [765432__]
// [____________543210]
((((long)in[38 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[39 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[40 + inPos]) << 14) & 262143L);
out[18 + outPos] =
// [7654____]
// [______________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[41 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[42 + inPos]) << 12) & 262143L);
out[19 + outPos] =
// [76______]
// [________________10]
((((long)in[42 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[43 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[44 + inPos]) << 10) & 262143L);
out[20 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[47 + inPos]) << 16) & 262143L);
out[21 + outPos] =
// [765432__]
// [____________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[49 + inPos]) << 14) & 262143L);
out[22 + outPos] =
// [7654____]
// [______________3210]
((((long)in[49 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[50 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[51 + inPos]) << 12) & 262143L);
out[23 + outPos] =
// [76______]
// [________________10]
((((long)in[51 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[52 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[53 + inPos]) << 10) & 262143L);
out[24 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[56 + inPos]) << 16) & 262143L);
out[25 + outPos] =
// [765432__]
// [____________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[58 + inPos]) << 14) & 262143L);
out[26 + outPos] =
// [7654____]
// [______________3210]
((((long)in[58 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[59 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[60 + inPos]) << 12) & 262143L);
out[27 + outPos] =
// [76______]
// [________________10]
((((long)in[60 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[61 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[62 + inPos]) << 10) & 262143L);
out[28 + outPos] =
// [76543210]
// [__________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in[65 + inPos]) << 16) & 262143L);
out[29 + outPos] =
// [765432__]
// [____________543210]
((((long)in[65 + inPos]) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in[66 + inPos]) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in[67 + inPos]) << 14) & 262143L);
out[30 + outPos] =
// [7654____]
// [______________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in[69 + inPos]) << 12) & 262143L);
out[31 + outPos] =
// [76______]
// [________________10]
((((long)in[69 + inPos]) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in[70 + inPos]) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in[71 + inPos]) << 10) & 262143L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get( 2 + inPos)) << 16) & 262143L);
out[ 1 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get( 2 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get( 3 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get( 4 + inPos)) << 14) & 262143L);
out[ 2 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get( 6 + inPos)) << 12) & 262143L);
out[ 3 + outPos] =
// [76______]
// [________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L);
out[ 4 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(11 + inPos)) << 16) & 262143L);
out[ 5 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(13 + inPos)) << 14) & 262143L);
out[ 6 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(15 + inPos)) << 12) & 262143L);
out[ 7 + outPos] =
// [76______]
// [________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L);
out[ 8 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(20 + inPos)) << 16) & 262143L);
out[ 9 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(21 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(22 + inPos)) << 14) & 262143L);
out[10 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(24 + inPos)) << 12) & 262143L);
out[11 + outPos] =
// [76______]
// [________________10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(25 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(26 + inPos)) << 10) & 262143L);
out[12 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(29 + inPos)) << 16) & 262143L);
out[13 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(30 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(31 + inPos)) << 14) & 262143L);
out[14 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(33 + inPos)) << 12) & 262143L);
out[15 + outPos] =
// [76______]
// [________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L);
out[16 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(38 + inPos)) << 16) & 262143L);
out[17 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(38 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(39 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(40 + inPos)) << 14) & 262143L);
out[18 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(42 + inPos)) << 12) & 262143L);
out[19 + outPos] =
// [76______]
// [________________10]
((((long)in.get(42 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(43 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(44 + inPos)) << 10) & 262143L);
out[20 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(47 + inPos)) << 16) & 262143L);
out[21 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(49 + inPos)) << 14) & 262143L);
out[22 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(49 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(50 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(51 + inPos)) << 12) & 262143L);
out[23 + outPos] =
// [76______]
// [________________10]
((((long)in.get(51 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(52 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(53 + inPos)) << 10) & 262143L);
out[24 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(56 + inPos)) << 16) & 262143L);
out[25 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(58 + inPos)) << 14) & 262143L);
out[26 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(58 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(59 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(60 + inPos)) << 12) & 262143L);
out[27 + outPos] =
// [76______]
// [________________10]
((((long)in.get(60 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(61 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(62 + inPos)) << 10) & 262143L);
out[28 + outPos] =
// [76543210]
// [__________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [__54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [______10]
// [76________________]
((((long)in.get(65 + inPos)) << 16) & 262143L);
out[29 + outPos] =
// [765432__]
// [____________543210]
((((long)in.get(65 + inPos)) >> 2) & 63L)
| // [76543210]
// [____32109876______]
((((long)in.get(66 + inPos)) << 6) & 16383L)
| // [____3210]
// [7654______________]
((((long)in.get(67 + inPos)) << 14) & 262143L);
out[30 + outPos] =
// [7654____]
// [______________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [______10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [__543210]
// [765432____________]
((((long)in.get(69 + inPos)) << 12) & 262143L);
out[31 + outPos] =
// [76______]
// [________________10]
((((long)in.get(69 + inPos)) >> 6) & 3L)
| // [76543210]
// [________98765432__]
((((long)in.get(70 + inPos)) << 2) & 1023L)
| // [76543210]
// [76543210__________]
((((long)in.get(71 + inPos)) << 10) & 262143L);
}
}
private static final class Packer19 extends BytePackerForLong {
private Packer19() {
super(19);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________76543210]
((in[ 0 + inPos] & 524287L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___54321098________]
((in[ 0 + inPos] & 524287L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_____210]
// [876________________]
((in[ 0 + inPos] & 524287L) >>> 16)
| // [76543___]
// [______________43210]
((in[ 1 + inPos] & 524287L) << 3)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______21098765_____]
((in[ 1 + inPos] & 524287L) >>> 5)) & 255);
out[ 4 + outPos] = (byte)((
// [__543210]
// [876543_____________]
((in[ 1 + inPos] & 524287L) >>> 13)
| // [76______]
// [_________________10]
((in[ 2 + inPos] & 524287L) << 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_________98765432__]
((in[ 2 + inPos] & 524287L) >>> 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_76543210__________]
((in[ 2 + inPos] & 524287L) >>> 10)) & 255);
out[ 7 + outPos] = (byte)((
// [_______0]
// [8__________________]
((in[ 2 + inPos] & 524287L) >>> 18)
| // [7654321_]
// [____________6543210]
((in[ 3 + inPos] & 524287L) << 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____43210987_______]
((in[ 3 + inPos] & 524287L) >>> 7)) & 255);
out[ 9 + outPos] = (byte)((
// [____3210]
// [8765_______________]
((in[ 3 + inPos] & 524287L) >>> 15)
| // [7654____]
// [_______________3210]
((in[ 4 + inPos] & 524287L) << 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_______10987654____]
((in[ 4 + inPos] & 524287L) >>> 4)) & 255);
out[11 + outPos] = (byte)((
// [_6543210]
// [8765432____________]
((in[ 4 + inPos] & 524287L) >>> 12)
| // [7_______]
// [__________________0]
((in[ 5 + inPos] & 524287L) << 7)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________87654321_]
((in[ 5 + inPos] & 524287L) >>> 1)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__65432109_________]
((in[ 5 + inPos] & 524287L) >>> 9)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [87_________________]
((in[ 5 + inPos] & 524287L) >>> 17)
| // [765432__]
// [_____________543210]
((in[ 6 + inPos] & 524287L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____32109876______]
((in[ 6 + inPos] & 524287L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [___43210]
// [87654______________]
((in[ 6 + inPos] & 524287L) >>> 14)
| // [765_____]
// [________________210]
((in[ 7 + inPos] & 524287L) << 5)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________09876543___]
((in[ 7 + inPos] & 524287L) >>> 3)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [87654321___________]
((in[ 7 + inPos] & 524287L) >>> 11)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________76543210]
((in[ 0 + inPos] & 524287L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___54321098________]
((in[ 0 + inPos] & 524287L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_____210]
// [876________________]
((in[ 0 + inPos] & 524287L) >>> 16)
| // [76543___]
// [______________43210]
((in[ 1 + inPos] & 524287L) << 3)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______21098765_____]
((in[ 1 + inPos] & 524287L) >>> 5)) & 255);
out[ 4 + outPos] = (byte)((
// [__543210]
// [876543_____________]
((in[ 1 + inPos] & 524287L) >>> 13)
| // [76______]
// [_________________10]
((in[ 2 + inPos] & 524287L) << 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_________98765432__]
((in[ 2 + inPos] & 524287L) >>> 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_76543210__________]
((in[ 2 + inPos] & 524287L) >>> 10)) & 255);
out[ 7 + outPos] = (byte)((
// [_______0]
// [8__________________]
((in[ 2 + inPos] & 524287L) >>> 18)
| // [7654321_]
// [____________6543210]
((in[ 3 + inPos] & 524287L) << 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____43210987_______]
((in[ 3 + inPos] & 524287L) >>> 7)) & 255);
out[ 9 + outPos] = (byte)((
// [____3210]
// [8765_______________]
((in[ 3 + inPos] & 524287L) >>> 15)
| // [7654____]
// [_______________3210]
((in[ 4 + inPos] & 524287L) << 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_______10987654____]
((in[ 4 + inPos] & 524287L) >>> 4)) & 255);
out[11 + outPos] = (byte)((
// [_6543210]
// [8765432____________]
((in[ 4 + inPos] & 524287L) >>> 12)
| // [7_______]
// [__________________0]
((in[ 5 + inPos] & 524287L) << 7)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________87654321_]
((in[ 5 + inPos] & 524287L) >>> 1)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__65432109_________]
((in[ 5 + inPos] & 524287L) >>> 9)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [87_________________]
((in[ 5 + inPos] & 524287L) >>> 17)
| // [765432__]
// [_____________543210]
((in[ 6 + inPos] & 524287L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____32109876______]
((in[ 6 + inPos] & 524287L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [___43210]
// [87654______________]
((in[ 6 + inPos] & 524287L) >>> 14)
| // [765_____]
// [________________210]
((in[ 7 + inPos] & 524287L) << 5)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________09876543___]
((in[ 7 + inPos] & 524287L) >>> 3)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [87654321___________]
((in[ 7 + inPos] & 524287L) >>> 11)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [___________76543210]
((in[ 8 + inPos] & 524287L))) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [___54321098________]
((in[ 8 + inPos] & 524287L) >>> 8)) & 255);
out[21 + outPos] = (byte)((
// [_____210]
// [876________________]
((in[ 8 + inPos] & 524287L) >>> 16)
| // [76543___]
// [______________43210]
((in[ 9 + inPos] & 524287L) << 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______21098765_____]
((in[ 9 + inPos] & 524287L) >>> 5)) & 255);
out[23 + outPos] = (byte)((
// [__543210]
// [876543_____________]
((in[ 9 + inPos] & 524287L) >>> 13)
| // [76______]
// [_________________10]
((in[10 + inPos] & 524287L) << 6)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_________98765432__]
((in[10 + inPos] & 524287L) >>> 2)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_76543210__________]
((in[10 + inPos] & 524287L) >>> 10)) & 255);
out[26 + outPos] = (byte)((
// [_______0]
// [8__________________]
((in[10 + inPos] & 524287L) >>> 18)
| // [7654321_]
// [____________6543210]
((in[11 + inPos] & 524287L) << 1)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____43210987_______]
((in[11 + inPos] & 524287L) >>> 7)) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [8765_______________]
((in[11 + inPos] & 524287L) >>> 15)
| // [7654____]
// [_______________3210]
((in[12 + inPos] & 524287L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_______10987654____]
((in[12 + inPos] & 524287L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [_6543210]
// [8765432____________]
((in[12 + inPos] & 524287L) >>> 12)
| // [7_______]
// [__________________0]
((in[13 + inPos] & 524287L) << 7)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________87654321_]
((in[13 + inPos] & 524287L) >>> 1)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__65432109_________]
((in[13 + inPos] & 524287L) >>> 9)) & 255);
out[33 + outPos] = (byte)((
// [______10]
// [87_________________]
((in[13 + inPos] & 524287L) >>> 17)
| // [765432__]
// [_____________543210]
((in[14 + inPos] & 524287L) << 2)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____32109876______]
((in[14 + inPos] & 524287L) >>> 6)) & 255);
out[35 + outPos] = (byte)((
// [___43210]
// [87654______________]
((in[14 + inPos] & 524287L) >>> 14)
| // [765_____]
// [________________210]
((in[15 + inPos] & 524287L) << 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________09876543___]
((in[15 + inPos] & 524287L) >>> 3)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [87654321___________]
((in[15 + inPos] & 524287L) >>> 11)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___________76543210]
((in[16 + inPos] & 524287L))) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [___54321098________]
((in[16 + inPos] & 524287L) >>> 8)) & 255);
out[40 + outPos] = (byte)((
// [_____210]
// [876________________]
((in[16 + inPos] & 524287L) >>> 16)
| // [76543___]
// [______________43210]
((in[17 + inPos] & 524287L) << 3)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______21098765_____]
((in[17 + inPos] & 524287L) >>> 5)) & 255);
out[42 + outPos] = (byte)((
// [__543210]
// [876543_____________]
((in[17 + inPos] & 524287L) >>> 13)
| // [76______]
// [_________________10]
((in[18 + inPos] & 524287L) << 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_________98765432__]
((in[18 + inPos] & 524287L) >>> 2)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_76543210__________]
((in[18 + inPos] & 524287L) >>> 10)) & 255);
out[45 + outPos] = (byte)((
// [_______0]
// [8__________________]
((in[18 + inPos] & 524287L) >>> 18)
| // [7654321_]
// [____________6543210]
((in[19 + inPos] & 524287L) << 1)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____43210987_______]
((in[19 + inPos] & 524287L) >>> 7)) & 255);
out[47 + outPos] = (byte)((
// [____3210]
// [8765_______________]
((in[19 + inPos] & 524287L) >>> 15)
| // [7654____]
// [_______________3210]
((in[20 + inPos] & 524287L) << 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______10987654____]
((in[20 + inPos] & 524287L) >>> 4)) & 255);
out[49 + outPos] = (byte)((
// [_6543210]
// [8765432____________]
((in[20 + inPos] & 524287L) >>> 12)
| // [7_______]
// [__________________0]
((in[21 + inPos] & 524287L) << 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________87654321_]
((in[21 + inPos] & 524287L) >>> 1)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__65432109_________]
((in[21 + inPos] & 524287L) >>> 9)) & 255);
out[52 + outPos] = (byte)((
// [______10]
// [87_________________]
((in[21 + inPos] & 524287L) >>> 17)
| // [765432__]
// [_____________543210]
((in[22 + inPos] & 524287L) << 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_____32109876______]
((in[22 + inPos] & 524287L) >>> 6)) & 255);
out[54 + outPos] = (byte)((
// [___43210]
// [87654______________]
((in[22 + inPos] & 524287L) >>> 14)
| // [765_____]
// [________________210]
((in[23 + inPos] & 524287L) << 5)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________09876543___]
((in[23 + inPos] & 524287L) >>> 3)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [87654321___________]
((in[23 + inPos] & 524287L) >>> 11)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [___________76543210]
((in[24 + inPos] & 524287L))) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [___54321098________]
((in[24 + inPos] & 524287L) >>> 8)) & 255);
out[59 + outPos] = (byte)((
// [_____210]
// [876________________]
((in[24 + inPos] & 524287L) >>> 16)
| // [76543___]
// [______________43210]
((in[25 + inPos] & 524287L) << 3)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______21098765_____]
((in[25 + inPos] & 524287L) >>> 5)) & 255);
out[61 + outPos] = (byte)((
// [__543210]
// [876543_____________]
((in[25 + inPos] & 524287L) >>> 13)
| // [76______]
// [_________________10]
((in[26 + inPos] & 524287L) << 6)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_________98765432__]
((in[26 + inPos] & 524287L) >>> 2)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_76543210__________]
((in[26 + inPos] & 524287L) >>> 10)) & 255);
out[64 + outPos] = (byte)((
// [_______0]
// [8__________________]
((in[26 + inPos] & 524287L) >>> 18)
| // [7654321_]
// [____________6543210]
((in[27 + inPos] & 524287L) << 1)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____43210987_______]
((in[27 + inPos] & 524287L) >>> 7)) & 255);
out[66 + outPos] = (byte)((
// [____3210]
// [8765_______________]
((in[27 + inPos] & 524287L) >>> 15)
| // [7654____]
// [_______________3210]
((in[28 + inPos] & 524287L) << 4)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_______10987654____]
((in[28 + inPos] & 524287L) >>> 4)) & 255);
out[68 + outPos] = (byte)((
// [_6543210]
// [8765432____________]
((in[28 + inPos] & 524287L) >>> 12)
| // [7_______]
// [__________________0]
((in[29 + inPos] & 524287L) << 7)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________87654321_]
((in[29 + inPos] & 524287L) >>> 1)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__65432109_________]
((in[29 + inPos] & 524287L) >>> 9)) & 255);
out[71 + outPos] = (byte)((
// [______10]
// [87_________________]
((in[29 + inPos] & 524287L) >>> 17)
| // [765432__]
// [_____________543210]
((in[30 + inPos] & 524287L) << 2)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_____32109876______]
((in[30 + inPos] & 524287L) >>> 6)) & 255);
out[73 + outPos] = (byte)((
// [___43210]
// [87654______________]
((in[30 + inPos] & 524287L) >>> 14)
| // [765_____]
// [________________210]
((in[31 + inPos] & 524287L) << 5)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________09876543___]
((in[31 + inPos] & 524287L) >>> 3)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [87654321___________]
((in[31 + inPos] & 524287L) >>> 11)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in[ 2 + inPos]) << 16) & 524287L);
out[ 1 + outPos] =
// [76543___]
// [______________43210]
((((long)in[ 2 + inPos]) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in[ 3 + inPos]) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in[ 4 + inPos]) << 13) & 524287L);
out[ 2 + outPos] =
// [76______]
// [_________________10]
((((long)in[ 4 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in[ 5 + inPos]) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in[ 6 + inPos]) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in[ 7 + inPos]) << 18) & 524287L);
out[ 3 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in[ 7 + inPos]) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in[ 8 + inPos]) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in[ 9 + inPos]) << 15) & 524287L);
out[ 4 + outPos] =
// [7654____]
// [_______________3210]
((((long)in[ 9 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in[10 + inPos]) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in[11 + inPos]) << 12) & 524287L);
out[ 5 + outPos] =
// [7_______]
// [__________________0]
((((long)in[11 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in[12 + inPos]) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in[13 + inPos]) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in[14 + inPos]) << 17) & 524287L);
out[ 6 + outPos] =
// [765432__]
// [_____________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in[16 + inPos]) << 14) & 524287L);
out[ 7 + outPos] =
// [765_____]
// [________________210]
((((long)in[16 + inPos]) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in[17 + inPos]) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in[18 + inPos]) << 11) & 524287L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in.get( 2 + inPos)) << 16) & 524287L);
out[ 1 + outPos] =
// [76543___]
// [______________43210]
((((long)in.get( 2 + inPos)) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in.get( 3 + inPos)) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in.get( 4 + inPos)) << 13) & 524287L);
out[ 2 + outPos] =
// [76______]
// [_________________10]
((((long)in.get( 4 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in.get( 5 + inPos)) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in.get( 6 + inPos)) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in.get( 7 + inPos)) << 18) & 524287L);
out[ 3 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in.get( 7 + inPos)) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in.get( 8 + inPos)) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in.get( 9 + inPos)) << 15) & 524287L);
out[ 4 + outPos] =
// [7654____]
// [_______________3210]
((((long)in.get( 9 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in.get(10 + inPos)) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in.get(11 + inPos)) << 12) & 524287L);
out[ 5 + outPos] =
// [7_______]
// [__________________0]
((((long)in.get(11 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in.get(12 + inPos)) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in.get(13 + inPos)) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in.get(14 + inPos)) << 17) & 524287L);
out[ 6 + outPos] =
// [765432__]
// [_____________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in.get(16 + inPos)) << 14) & 524287L);
out[ 7 + outPos] =
// [765_____]
// [________________210]
((((long)in.get(16 + inPos)) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in.get(17 + inPos)) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in.get(18 + inPos)) << 11) & 524287L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in[ 2 + inPos]) << 16) & 524287L);
out[ 1 + outPos] =
// [76543___]
// [______________43210]
((((long)in[ 2 + inPos]) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in[ 3 + inPos]) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in[ 4 + inPos]) << 13) & 524287L);
out[ 2 + outPos] =
// [76______]
// [_________________10]
((((long)in[ 4 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in[ 5 + inPos]) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in[ 6 + inPos]) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in[ 7 + inPos]) << 18) & 524287L);
out[ 3 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in[ 7 + inPos]) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in[ 8 + inPos]) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in[ 9 + inPos]) << 15) & 524287L);
out[ 4 + outPos] =
// [7654____]
// [_______________3210]
((((long)in[ 9 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in[10 + inPos]) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in[11 + inPos]) << 12) & 524287L);
out[ 5 + outPos] =
// [7_______]
// [__________________0]
((((long)in[11 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in[12 + inPos]) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in[13 + inPos]) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in[14 + inPos]) << 17) & 524287L);
out[ 6 + outPos] =
// [765432__]
// [_____________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in[16 + inPos]) << 14) & 524287L);
out[ 7 + outPos] =
// [765_____]
// [________________210]
((((long)in[16 + inPos]) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in[17 + inPos]) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in[18 + inPos]) << 11) & 524287L);
out[ 8 + outPos] =
// [76543210]
// [___________76543210]
((((long)in[19 + inPos]) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in[20 + inPos]) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in[21 + inPos]) << 16) & 524287L);
out[ 9 + outPos] =
// [76543___]
// [______________43210]
((((long)in[21 + inPos]) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in[22 + inPos]) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in[23 + inPos]) << 13) & 524287L);
out[10 + outPos] =
// [76______]
// [_________________10]
((((long)in[23 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in[24 + inPos]) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in[25 + inPos]) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in[26 + inPos]) << 18) & 524287L);
out[11 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in[26 + inPos]) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in[27 + inPos]) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in[28 + inPos]) << 15) & 524287L);
out[12 + outPos] =
// [7654____]
// [_______________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in[29 + inPos]) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in[30 + inPos]) << 12) & 524287L);
out[13 + outPos] =
// [7_______]
// [__________________0]
((((long)in[30 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in[31 + inPos]) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in[32 + inPos]) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in[33 + inPos]) << 17) & 524287L);
out[14 + outPos] =
// [765432__]
// [_____________543210]
((((long)in[33 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in[34 + inPos]) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in[35 + inPos]) << 14) & 524287L);
out[15 + outPos] =
// [765_____]
// [________________210]
((((long)in[35 + inPos]) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in[36 + inPos]) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in[37 + inPos]) << 11) & 524287L);
out[16 + outPos] =
// [76543210]
// [___________76543210]
((((long)in[38 + inPos]) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in[39 + inPos]) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in[40 + inPos]) << 16) & 524287L);
out[17 + outPos] =
// [76543___]
// [______________43210]
((((long)in[40 + inPos]) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in[41 + inPos]) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in[42 + inPos]) << 13) & 524287L);
out[18 + outPos] =
// [76______]
// [_________________10]
((((long)in[42 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in[43 + inPos]) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in[44 + inPos]) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in[45 + inPos]) << 18) & 524287L);
out[19 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in[45 + inPos]) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in[46 + inPos]) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in[47 + inPos]) << 15) & 524287L);
out[20 + outPos] =
// [7654____]
// [_______________3210]
((((long)in[47 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in[48 + inPos]) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in[49 + inPos]) << 12) & 524287L);
out[21 + outPos] =
// [7_______]
// [__________________0]
((((long)in[49 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in[50 + inPos]) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in[51 + inPos]) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in[52 + inPos]) << 17) & 524287L);
out[22 + outPos] =
// [765432__]
// [_____________543210]
((((long)in[52 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in[53 + inPos]) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in[54 + inPos]) << 14) & 524287L);
out[23 + outPos] =
// [765_____]
// [________________210]
((((long)in[54 + inPos]) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in[55 + inPos]) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in[56 + inPos]) << 11) & 524287L);
out[24 + outPos] =
// [76543210]
// [___________76543210]
((((long)in[57 + inPos]) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in[58 + inPos]) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in[59 + inPos]) << 16) & 524287L);
out[25 + outPos] =
// [76543___]
// [______________43210]
((((long)in[59 + inPos]) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in[60 + inPos]) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in[61 + inPos]) << 13) & 524287L);
out[26 + outPos] =
// [76______]
// [_________________10]
((((long)in[61 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in[62 + inPos]) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in[63 + inPos]) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in[64 + inPos]) << 18) & 524287L);
out[27 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in[64 + inPos]) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in[65 + inPos]) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in[66 + inPos]) << 15) & 524287L);
out[28 + outPos] =
// [7654____]
// [_______________3210]
((((long)in[66 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in[67 + inPos]) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in[68 + inPos]) << 12) & 524287L);
out[29 + outPos] =
// [7_______]
// [__________________0]
((((long)in[68 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in[69 + inPos]) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in[70 + inPos]) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in[71 + inPos]) << 17) & 524287L);
out[30 + outPos] =
// [765432__]
// [_____________543210]
((((long)in[71 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in[72 + inPos]) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in[73 + inPos]) << 14) & 524287L);
out[31 + outPos] =
// [765_____]
// [________________210]
((((long)in[73 + inPos]) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in[74 + inPos]) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in[75 + inPos]) << 11) & 524287L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in.get( 2 + inPos)) << 16) & 524287L);
out[ 1 + outPos] =
// [76543___]
// [______________43210]
((((long)in.get( 2 + inPos)) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in.get( 3 + inPos)) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in.get( 4 + inPos)) << 13) & 524287L);
out[ 2 + outPos] =
// [76______]
// [_________________10]
((((long)in.get( 4 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in.get( 5 + inPos)) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in.get( 6 + inPos)) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in.get( 7 + inPos)) << 18) & 524287L);
out[ 3 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in.get( 7 + inPos)) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in.get( 8 + inPos)) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in.get( 9 + inPos)) << 15) & 524287L);
out[ 4 + outPos] =
// [7654____]
// [_______________3210]
((((long)in.get( 9 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in.get(10 + inPos)) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in.get(11 + inPos)) << 12) & 524287L);
out[ 5 + outPos] =
// [7_______]
// [__________________0]
((((long)in.get(11 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in.get(12 + inPos)) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in.get(13 + inPos)) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in.get(14 + inPos)) << 17) & 524287L);
out[ 6 + outPos] =
// [765432__]
// [_____________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in.get(16 + inPos)) << 14) & 524287L);
out[ 7 + outPos] =
// [765_____]
// [________________210]
((((long)in.get(16 + inPos)) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in.get(17 + inPos)) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in.get(18 + inPos)) << 11) & 524287L);
out[ 8 + outPos] =
// [76543210]
// [___________76543210]
((((long)in.get(19 + inPos)) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in.get(20 + inPos)) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in.get(21 + inPos)) << 16) & 524287L);
out[ 9 + outPos] =
// [76543___]
// [______________43210]
((((long)in.get(21 + inPos)) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in.get(22 + inPos)) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in.get(23 + inPos)) << 13) & 524287L);
out[10 + outPos] =
// [76______]
// [_________________10]
((((long)in.get(23 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in.get(24 + inPos)) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in.get(25 + inPos)) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in.get(26 + inPos)) << 18) & 524287L);
out[11 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in.get(26 + inPos)) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in.get(27 + inPos)) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in.get(28 + inPos)) << 15) & 524287L);
out[12 + outPos] =
// [7654____]
// [_______________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in.get(30 + inPos)) << 12) & 524287L);
out[13 + outPos] =
// [7_______]
// [__________________0]
((((long)in.get(30 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in.get(31 + inPos)) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in.get(32 + inPos)) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in.get(33 + inPos)) << 17) & 524287L);
out[14 + outPos] =
// [765432__]
// [_____________543210]
((((long)in.get(33 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in.get(34 + inPos)) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in.get(35 + inPos)) << 14) & 524287L);
out[15 + outPos] =
// [765_____]
// [________________210]
((((long)in.get(35 + inPos)) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in.get(36 + inPos)) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in.get(37 + inPos)) << 11) & 524287L);
out[16 + outPos] =
// [76543210]
// [___________76543210]
((((long)in.get(38 + inPos)) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in.get(39 + inPos)) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in.get(40 + inPos)) << 16) & 524287L);
out[17 + outPos] =
// [76543___]
// [______________43210]
((((long)in.get(40 + inPos)) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in.get(41 + inPos)) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in.get(42 + inPos)) << 13) & 524287L);
out[18 + outPos] =
// [76______]
// [_________________10]
((((long)in.get(42 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in.get(43 + inPos)) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in.get(44 + inPos)) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in.get(45 + inPos)) << 18) & 524287L);
out[19 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in.get(45 + inPos)) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in.get(46 + inPos)) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in.get(47 + inPos)) << 15) & 524287L);
out[20 + outPos] =
// [7654____]
// [_______________3210]
((((long)in.get(47 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in.get(48 + inPos)) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in.get(49 + inPos)) << 12) & 524287L);
out[21 + outPos] =
// [7_______]
// [__________________0]
((((long)in.get(49 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in.get(50 + inPos)) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in.get(51 + inPos)) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in.get(52 + inPos)) << 17) & 524287L);
out[22 + outPos] =
// [765432__]
// [_____________543210]
((((long)in.get(52 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in.get(53 + inPos)) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in.get(54 + inPos)) << 14) & 524287L);
out[23 + outPos] =
// [765_____]
// [________________210]
((((long)in.get(54 + inPos)) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in.get(55 + inPos)) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in.get(56 + inPos)) << 11) & 524287L);
out[24 + outPos] =
// [76543210]
// [___________76543210]
((((long)in.get(57 + inPos)) ) & 255L)
| // [76543210]
// [___54321098________]
((((long)in.get(58 + inPos)) << 8) & 65535L)
| // [_____210]
// [876________________]
((((long)in.get(59 + inPos)) << 16) & 524287L);
out[25 + outPos] =
// [76543___]
// [______________43210]
((((long)in.get(59 + inPos)) >> 3) & 31L)
| // [76543210]
// [______21098765_____]
((((long)in.get(60 + inPos)) << 5) & 8191L)
| // [__543210]
// [876543_____________]
((((long)in.get(61 + inPos)) << 13) & 524287L);
out[26 + outPos] =
// [76______]
// [_________________10]
((((long)in.get(61 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________98765432__]
((((long)in.get(62 + inPos)) << 2) & 1023L)
| // [76543210]
// [_76543210__________]
((((long)in.get(63 + inPos)) << 10) & 262143L)
| // [_______0]
// [8__________________]
((((long)in.get(64 + inPos)) << 18) & 524287L);
out[27 + outPos] =
// [7654321_]
// [____________6543210]
((((long)in.get(64 + inPos)) >> 1) & 127L)
| // [76543210]
// [____43210987_______]
((((long)in.get(65 + inPos)) << 7) & 32767L)
| // [____3210]
// [8765_______________]
((((long)in.get(66 + inPos)) << 15) & 524287L);
out[28 + outPos] =
// [7654____]
// [_______________3210]
((((long)in.get(66 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______10987654____]
((((long)in.get(67 + inPos)) << 4) & 4095L)
| // [_6543210]
// [8765432____________]
((((long)in.get(68 + inPos)) << 12) & 524287L);
out[29 + outPos] =
// [7_______]
// [__________________0]
((((long)in.get(68 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________87654321_]
((((long)in.get(69 + inPos)) << 1) & 511L)
| // [76543210]
// [__65432109_________]
((((long)in.get(70 + inPos)) << 9) & 131071L)
| // [______10]
// [87_________________]
((((long)in.get(71 + inPos)) << 17) & 524287L);
out[30 + outPos] =
// [765432__]
// [_____________543210]
((((long)in.get(71 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____32109876______]
((((long)in.get(72 + inPos)) << 6) & 16383L)
| // [___43210]
// [87654______________]
((((long)in.get(73 + inPos)) << 14) & 524287L);
out[31 + outPos] =
// [765_____]
// [________________210]
((((long)in.get(73 + inPos)) >> 5) & 7L)
| // [76543210]
// [________09876543___]
((((long)in.get(74 + inPos)) << 3) & 2047L)
| // [76543210]
// [87654321___________]
((((long)in.get(75 + inPos)) << 11) & 524287L);
}
}
private static final class Packer20 extends BytePackerForLong {
private Packer20() {
super(20);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 0 + inPos] & 1048575L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 0 + inPos] & 1048575L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 0 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 1 + inPos] & 1048575L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 1 + inPos] & 1048575L) >>> 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 1 + inPos] & 1048575L) >>> 12)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 2 + inPos] & 1048575L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 2 + inPos] & 1048575L) >>> 8)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 2 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 3 + inPos] & 1048575L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 3 + inPos] & 1048575L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 3 + inPos] & 1048575L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 4 + inPos] & 1048575L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 4 + inPos] & 1048575L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 4 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 5 + inPos] & 1048575L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 5 + inPos] & 1048575L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 5 + inPos] & 1048575L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 6 + inPos] & 1048575L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 6 + inPos] & 1048575L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 6 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 7 + inPos] & 1048575L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 7 + inPos] & 1048575L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 7 + inPos] & 1048575L) >>> 12)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 0 + inPos] & 1048575L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 0 + inPos] & 1048575L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 0 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 1 + inPos] & 1048575L) << 4)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 1 + inPos] & 1048575L) >>> 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 1 + inPos] & 1048575L) >>> 12)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 2 + inPos] & 1048575L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 2 + inPos] & 1048575L) >>> 8)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 2 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 3 + inPos] & 1048575L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 3 + inPos] & 1048575L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 3 + inPos] & 1048575L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 4 + inPos] & 1048575L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 4 + inPos] & 1048575L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 4 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 5 + inPos] & 1048575L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 5 + inPos] & 1048575L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 5 + inPos] & 1048575L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 6 + inPos] & 1048575L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 6 + inPos] & 1048575L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 6 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 7 + inPos] & 1048575L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 7 + inPos] & 1048575L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 7 + inPos] & 1048575L) >>> 12)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[ 8 + inPos] & 1048575L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[ 8 + inPos] & 1048575L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[ 8 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[ 9 + inPos] & 1048575L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[ 9 + inPos] & 1048575L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[ 9 + inPos] & 1048575L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[10 + inPos] & 1048575L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[10 + inPos] & 1048575L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[10 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[11 + inPos] & 1048575L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[11 + inPos] & 1048575L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[11 + inPos] & 1048575L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[12 + inPos] & 1048575L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[12 + inPos] & 1048575L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[12 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[13 + inPos] & 1048575L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[13 + inPos] & 1048575L) >>> 4)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[13 + inPos] & 1048575L) >>> 12)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[14 + inPos] & 1048575L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[14 + inPos] & 1048575L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[14 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[15 + inPos] & 1048575L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[15 + inPos] & 1048575L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[15 + inPos] & 1048575L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[16 + inPos] & 1048575L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[16 + inPos] & 1048575L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[16 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[17 + inPos] & 1048575L) << 4)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[17 + inPos] & 1048575L) >>> 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[17 + inPos] & 1048575L) >>> 12)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[18 + inPos] & 1048575L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[18 + inPos] & 1048575L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[18 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[19 + inPos] & 1048575L) << 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[19 + inPos] & 1048575L) >>> 4)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[19 + inPos] & 1048575L) >>> 12)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[20 + inPos] & 1048575L))) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[20 + inPos] & 1048575L) >>> 8)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[20 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[21 + inPos] & 1048575L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[21 + inPos] & 1048575L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[21 + inPos] & 1048575L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[22 + inPos] & 1048575L))) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[22 + inPos] & 1048575L) >>> 8)) & 255);
out[57 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[22 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[23 + inPos] & 1048575L) << 4)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[23 + inPos] & 1048575L) >>> 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[23 + inPos] & 1048575L) >>> 12)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[24 + inPos] & 1048575L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[24 + inPos] & 1048575L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[24 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[25 + inPos] & 1048575L) << 4)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[25 + inPos] & 1048575L) >>> 4)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[25 + inPos] & 1048575L) >>> 12)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[26 + inPos] & 1048575L))) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[26 + inPos] & 1048575L) >>> 8)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[26 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[27 + inPos] & 1048575L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[27 + inPos] & 1048575L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[27 + inPos] & 1048575L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[28 + inPos] & 1048575L))) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[28 + inPos] & 1048575L) >>> 8)) & 255);
out[72 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[28 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[29 + inPos] & 1048575L) << 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[29 + inPos] & 1048575L) >>> 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[29 + inPos] & 1048575L) >>> 12)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________76543210]
((in[30 + inPos] & 1048575L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____54321098________]
((in[30 + inPos] & 1048575L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [____3210]
// [9876________________]
((in[30 + inPos] & 1048575L) >>> 16)
| // [7654____]
// [________________3210]
((in[31 + inPos] & 1048575L) << 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________10987654____]
((in[31 + inPos] & 1048575L) >>> 4)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [98765432____________]
((in[31 + inPos] & 1048575L) >>> 12)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[ 2 + inPos]) << 16) & 1048575L);
out[ 1 + outPos] =
// [7654____]
// [________________3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[ 3 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[ 4 + inPos]) << 12) & 1048575L);
out[ 2 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[ 6 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[ 7 + inPos]) << 16) & 1048575L);
out[ 3 + outPos] =
// [7654____]
// [________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L);
out[ 4 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[11 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[12 + inPos]) << 16) & 1048575L);
out[ 5 + outPos] =
// [7654____]
// [________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L);
out[ 6 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[17 + inPos]) << 16) & 1048575L);
out[ 7 + outPos] =
// [7654____]
// [________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get( 2 + inPos)) << 16) & 1048575L);
out[ 1 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get( 3 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get( 4 + inPos)) << 12) & 1048575L);
out[ 2 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get( 6 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get( 7 + inPos)) << 16) & 1048575L);
out[ 3 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L);
out[ 4 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(12 + inPos)) << 16) & 1048575L);
out[ 5 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L);
out[ 6 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(17 + inPos)) << 16) & 1048575L);
out[ 7 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[ 2 + inPos]) << 16) & 1048575L);
out[ 1 + outPos] =
// [7654____]
// [________________3210]
((((long)in[ 2 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[ 3 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[ 4 + inPos]) << 12) & 1048575L);
out[ 2 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[ 6 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[ 7 + inPos]) << 16) & 1048575L);
out[ 3 + outPos] =
// [7654____]
// [________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L);
out[ 4 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[11 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[12 + inPos]) << 16) & 1048575L);
out[ 5 + outPos] =
// [7654____]
// [________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L);
out[ 6 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[17 + inPos]) << 16) & 1048575L);
out[ 7 + outPos] =
// [7654____]
// [________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L);
out[ 8 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[21 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[22 + inPos]) << 16) & 1048575L);
out[ 9 + outPos] =
// [7654____]
// [________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L);
out[10 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[27 + inPos]) << 16) & 1048575L);
out[11 + outPos] =
// [7654____]
// [________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L);
out[12 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[32 + inPos]) << 16) & 1048575L);
out[13 + outPos] =
// [7654____]
// [________________3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[33 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[34 + inPos]) << 12) & 1048575L);
out[14 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[37 + inPos]) << 16) & 1048575L);
out[15 + outPos] =
// [7654____]
// [________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L);
out[16 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[41 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[42 + inPos]) << 16) & 1048575L);
out[17 + outPos] =
// [7654____]
// [________________3210]
((((long)in[42 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[43 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[44 + inPos]) << 12) & 1048575L);
out[18 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[47 + inPos]) << 16) & 1048575L);
out[19 + outPos] =
// [7654____]
// [________________3210]
((((long)in[47 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[48 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[49 + inPos]) << 12) & 1048575L);
out[20 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[50 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[51 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[52 + inPos]) << 16) & 1048575L);
out[21 + outPos] =
// [7654____]
// [________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L);
out[22 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[55 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[56 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[57 + inPos]) << 16) & 1048575L);
out[23 + outPos] =
// [7654____]
// [________________3210]
((((long)in[57 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[58 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[59 + inPos]) << 12) & 1048575L);
out[24 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[62 + inPos]) << 16) & 1048575L);
out[25 + outPos] =
// [7654____]
// [________________3210]
((((long)in[62 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[63 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[64 + inPos]) << 12) & 1048575L);
out[26 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[65 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[66 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[67 + inPos]) << 16) & 1048575L);
out[27 + outPos] =
// [7654____]
// [________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L);
out[28 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[70 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[71 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[72 + inPos]) << 16) & 1048575L);
out[29 + outPos] =
// [7654____]
// [________________3210]
((((long)in[72 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[73 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[74 + inPos]) << 12) & 1048575L);
out[30 + outPos] =
// [76543210]
// [____________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in[77 + inPos]) << 16) & 1048575L);
out[31 + outPos] =
// [7654____]
// [________________3210]
((((long)in[77 + inPos]) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in[78 + inPos]) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in[79 + inPos]) << 12) & 1048575L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get( 2 + inPos)) << 16) & 1048575L);
out[ 1 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get( 2 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get( 3 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get( 4 + inPos)) << 12) & 1048575L);
out[ 2 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get( 6 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get( 7 + inPos)) << 16) & 1048575L);
out[ 3 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L);
out[ 4 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(12 + inPos)) << 16) & 1048575L);
out[ 5 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L);
out[ 6 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(17 + inPos)) << 16) & 1048575L);
out[ 7 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L);
out[ 8 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(22 + inPos)) << 16) & 1048575L);
out[ 9 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L);
out[10 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(27 + inPos)) << 16) & 1048575L);
out[11 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L);
out[12 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(32 + inPos)) << 16) & 1048575L);
out[13 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(33 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(34 + inPos)) << 12) & 1048575L);
out[14 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(37 + inPos)) << 16) & 1048575L);
out[15 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L);
out[16 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(42 + inPos)) << 16) & 1048575L);
out[17 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(42 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(43 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(44 + inPos)) << 12) & 1048575L);
out[18 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(47 + inPos)) << 16) & 1048575L);
out[19 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(47 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(48 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(49 + inPos)) << 12) & 1048575L);
out[20 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(50 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(51 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(52 + inPos)) << 16) & 1048575L);
out[21 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L);
out[22 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(55 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(56 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(57 + inPos)) << 16) & 1048575L);
out[23 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(57 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(58 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(59 + inPos)) << 12) & 1048575L);
out[24 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(62 + inPos)) << 16) & 1048575L);
out[25 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(62 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(63 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(64 + inPos)) << 12) & 1048575L);
out[26 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(65 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(66 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(67 + inPos)) << 16) & 1048575L);
out[27 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L);
out[28 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(70 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(71 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(72 + inPos)) << 16) & 1048575L);
out[29 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(72 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(73 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(74 + inPos)) << 12) & 1048575L);
out[30 + outPos] =
// [76543210]
// [____________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [____54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [____3210]
// [9876________________]
((((long)in.get(77 + inPos)) << 16) & 1048575L);
out[31 + outPos] =
// [7654____]
// [________________3210]
((((long)in.get(77 + inPos)) >> 4) & 15L)
| // [76543210]
// [________10987654____]
((((long)in.get(78 + inPos)) << 4) & 4095L)
| // [76543210]
// [98765432____________]
((((long)in.get(79 + inPos)) << 12) & 1048575L);
}
}
private static final class Packer21 extends BytePackerForLong {
private Packer21() {
super(21);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________76543210]
((in[ 0 + inPos] & 2097151L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____54321098________]
((in[ 0 + inPos] & 2097151L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [___43210]
// [09876________________]
((in[ 0 + inPos] & 2097151L) >>> 16)
| // [765_____]
// [__________________210]
((in[ 1 + inPos] & 2097151L) << 5)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________09876543___]
((in[ 1 + inPos] & 2097151L) >>> 3)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__87654321___________]
((in[ 1 + inPos] & 2097151L) >>> 11)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [09___________________]
((in[ 1 + inPos] & 2097151L) >>> 19)
| // [765432__]
// [_______________543210]
((in[ 2 + inPos] & 2097151L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_______32109876______]
((in[ 2 + inPos] & 2097151L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [0987654______________]
((in[ 2 + inPos] & 2097151L) >>> 14)
| // [7_______]
// [____________________0]
((in[ 3 + inPos] & 2097151L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________87654321_]
((in[ 3 + inPos] & 2097151L) >>> 1)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____65432109_________]
((in[ 3 + inPos] & 2097151L) >>> 9)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [0987_________________]
((in[ 3 + inPos] & 2097151L) >>> 17)
| // [7654____]
// [_________________3210]
((in[ 4 + inPos] & 2097151L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________10987654____]
((in[ 4 + inPos] & 2097151L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_98765432____________]
((in[ 4 + inPos] & 2097151L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [0____________________]
((in[ 4 + inPos] & 2097151L) >>> 20)
| // [7654321_]
// [______________6543210]
((in[ 5 + inPos] & 2097151L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______43210987_______]
((in[ 5 + inPos] & 2097151L) >>> 7)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [098765_______________]
((in[ 5 + inPos] & 2097151L) >>> 15)
| // [76______]
// [___________________10]
((in[ 6 + inPos] & 2097151L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________98765432__]
((in[ 6 + inPos] & 2097151L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___76543210__________]
((in[ 6 + inPos] & 2097151L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [_____210]
// [098__________________]
((in[ 6 + inPos] & 2097151L) >>> 18)
| // [76543___]
// [________________43210]
((in[ 7 + inPos] & 2097151L) << 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________21098765_____]
((in[ 7 + inPos] & 2097151L) >>> 5)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [09876543_____________]
((in[ 7 + inPos] & 2097151L) >>> 13)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________76543210]
((in[ 0 + inPos] & 2097151L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____54321098________]
((in[ 0 + inPos] & 2097151L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [___43210]
// [09876________________]
((in[ 0 + inPos] & 2097151L) >>> 16)
| // [765_____]
// [__________________210]
((in[ 1 + inPos] & 2097151L) << 5)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________09876543___]
((in[ 1 + inPos] & 2097151L) >>> 3)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__87654321___________]
((in[ 1 + inPos] & 2097151L) >>> 11)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [09___________________]
((in[ 1 + inPos] & 2097151L) >>> 19)
| // [765432__]
// [_______________543210]
((in[ 2 + inPos] & 2097151L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_______32109876______]
((in[ 2 + inPos] & 2097151L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [0987654______________]
((in[ 2 + inPos] & 2097151L) >>> 14)
| // [7_______]
// [____________________0]
((in[ 3 + inPos] & 2097151L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________87654321_]
((in[ 3 + inPos] & 2097151L) >>> 1)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____65432109_________]
((in[ 3 + inPos] & 2097151L) >>> 9)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [0987_________________]
((in[ 3 + inPos] & 2097151L) >>> 17)
| // [7654____]
// [_________________3210]
((in[ 4 + inPos] & 2097151L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________10987654____]
((in[ 4 + inPos] & 2097151L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_98765432____________]
((in[ 4 + inPos] & 2097151L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [0____________________]
((in[ 4 + inPos] & 2097151L) >>> 20)
| // [7654321_]
// [______________6543210]
((in[ 5 + inPos] & 2097151L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______43210987_______]
((in[ 5 + inPos] & 2097151L) >>> 7)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [098765_______________]
((in[ 5 + inPos] & 2097151L) >>> 15)
| // [76______]
// [___________________10]
((in[ 6 + inPos] & 2097151L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________98765432__]
((in[ 6 + inPos] & 2097151L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___76543210__________]
((in[ 6 + inPos] & 2097151L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [_____210]
// [098__________________]
((in[ 6 + inPos] & 2097151L) >>> 18)
| // [76543___]
// [________________43210]
((in[ 7 + inPos] & 2097151L) << 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________21098765_____]
((in[ 7 + inPos] & 2097151L) >>> 5)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [09876543_____________]
((in[ 7 + inPos] & 2097151L) >>> 13)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________76543210]
((in[ 8 + inPos] & 2097151L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____54321098________]
((in[ 8 + inPos] & 2097151L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [09876________________]
((in[ 8 + inPos] & 2097151L) >>> 16)
| // [765_____]
// [__________________210]
((in[ 9 + inPos] & 2097151L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________09876543___]
((in[ 9 + inPos] & 2097151L) >>> 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__87654321___________]
((in[ 9 + inPos] & 2097151L) >>> 11)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [09___________________]
((in[ 9 + inPos] & 2097151L) >>> 19)
| // [765432__]
// [_______________543210]
((in[10 + inPos] & 2097151L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_______32109876______]
((in[10 + inPos] & 2097151L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [_6543210]
// [0987654______________]
((in[10 + inPos] & 2097151L) >>> 14)
| // [7_______]
// [____________________0]
((in[11 + inPos] & 2097151L) << 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________87654321_]
((in[11 + inPos] & 2097151L) >>> 1)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____65432109_________]
((in[11 + inPos] & 2097151L) >>> 9)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [0987_________________]
((in[11 + inPos] & 2097151L) >>> 17)
| // [7654____]
// [_________________3210]
((in[12 + inPos] & 2097151L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_________10987654____]
((in[12 + inPos] & 2097151L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_98765432____________]
((in[12 + inPos] & 2097151L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [_______0]
// [0____________________]
((in[12 + inPos] & 2097151L) >>> 20)
| // [7654321_]
// [______________6543210]
((in[13 + inPos] & 2097151L) << 1)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______43210987_______]
((in[13 + inPos] & 2097151L) >>> 7)) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [098765_______________]
((in[13 + inPos] & 2097151L) >>> 15)
| // [76______]
// [___________________10]
((in[14 + inPos] & 2097151L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________98765432__]
((in[14 + inPos] & 2097151L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___76543210__________]
((in[14 + inPos] & 2097151L) >>> 10)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [098__________________]
((in[14 + inPos] & 2097151L) >>> 18)
| // [76543___]
// [________________43210]
((in[15 + inPos] & 2097151L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________21098765_____]
((in[15 + inPos] & 2097151L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [09876543_____________]
((in[15 + inPos] & 2097151L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_____________76543210]
((in[16 + inPos] & 2097151L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_____54321098________]
((in[16 + inPos] & 2097151L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [___43210]
// [09876________________]
((in[16 + inPos] & 2097151L) >>> 16)
| // [765_____]
// [__________________210]
((in[17 + inPos] & 2097151L) << 5)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________09876543___]
((in[17 + inPos] & 2097151L) >>> 3)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__87654321___________]
((in[17 + inPos] & 2097151L) >>> 11)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [09___________________]
((in[17 + inPos] & 2097151L) >>> 19)
| // [765432__]
// [_______________543210]
((in[18 + inPos] & 2097151L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______32109876______]
((in[18 + inPos] & 2097151L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [_6543210]
// [0987654______________]
((in[18 + inPos] & 2097151L) >>> 14)
| // [7_______]
// [____________________0]
((in[19 + inPos] & 2097151L) << 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________87654321_]
((in[19 + inPos] & 2097151L) >>> 1)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____65432109_________]
((in[19 + inPos] & 2097151L) >>> 9)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [0987_________________]
((in[19 + inPos] & 2097151L) >>> 17)
| // [7654____]
// [_________________3210]
((in[20 + inPos] & 2097151L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_________10987654____]
((in[20 + inPos] & 2097151L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_98765432____________]
((in[20 + inPos] & 2097151L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [_______0]
// [0____________________]
((in[20 + inPos] & 2097151L) >>> 20)
| // [7654321_]
// [______________6543210]
((in[21 + inPos] & 2097151L) << 1)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______43210987_______]
((in[21 + inPos] & 2097151L) >>> 7)) & 255);
out[57 + outPos] = (byte)((
// [__543210]
// [098765_______________]
((in[21 + inPos] & 2097151L) >>> 15)
| // [76______]
// [___________________10]
((in[22 + inPos] & 2097151L) << 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [___________98765432__]
((in[22 + inPos] & 2097151L) >>> 2)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [___76543210__________]
((in[22 + inPos] & 2097151L) >>> 10)) & 255);
out[60 + outPos] = (byte)((
// [_____210]
// [098__________________]
((in[22 + inPos] & 2097151L) >>> 18)
| // [76543___]
// [________________43210]
((in[23 + inPos] & 2097151L) << 3)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________21098765_____]
((in[23 + inPos] & 2097151L) >>> 5)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [09876543_____________]
((in[23 + inPos] & 2097151L) >>> 13)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____________76543210]
((in[24 + inPos] & 2097151L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_____54321098________]
((in[24 + inPos] & 2097151L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [___43210]
// [09876________________]
((in[24 + inPos] & 2097151L) >>> 16)
| // [765_____]
// [__________________210]
((in[25 + inPos] & 2097151L) << 5)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [__________09876543___]
((in[25 + inPos] & 2097151L) >>> 3)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__87654321___________]
((in[25 + inPos] & 2097151L) >>> 11)) & 255);
out[68 + outPos] = (byte)((
// [______10]
// [09___________________]
((in[25 + inPos] & 2097151L) >>> 19)
| // [765432__]
// [_______________543210]
((in[26 + inPos] & 2097151L) << 2)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______32109876______]
((in[26 + inPos] & 2097151L) >>> 6)) & 255);
out[70 + outPos] = (byte)((
// [_6543210]
// [0987654______________]
((in[26 + inPos] & 2097151L) >>> 14)
| // [7_______]
// [____________________0]
((in[27 + inPos] & 2097151L) << 7)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________87654321_]
((in[27 + inPos] & 2097151L) >>> 1)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____65432109_________]
((in[27 + inPos] & 2097151L) >>> 9)) & 255);
out[73 + outPos] = (byte)((
// [____3210]
// [0987_________________]
((in[27 + inPos] & 2097151L) >>> 17)
| // [7654____]
// [_________________3210]
((in[28 + inPos] & 2097151L) << 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_________10987654____]
((in[28 + inPos] & 2097151L) >>> 4)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_98765432____________]
((in[28 + inPos] & 2097151L) >>> 12)) & 255);
out[76 + outPos] = (byte)((
// [_______0]
// [0____________________]
((in[28 + inPos] & 2097151L) >>> 20)
| // [7654321_]
// [______________6543210]
((in[29 + inPos] & 2097151L) << 1)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______43210987_______]
((in[29 + inPos] & 2097151L) >>> 7)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [098765_______________]
((in[29 + inPos] & 2097151L) >>> 15)
| // [76______]
// [___________________10]
((in[30 + inPos] & 2097151L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [___________98765432__]
((in[30 + inPos] & 2097151L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [___76543210__________]
((in[30 + inPos] & 2097151L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [_____210]
// [098__________________]
((in[30 + inPos] & 2097151L) >>> 18)
| // [76543___]
// [________________43210]
((in[31 + inPos] & 2097151L) << 3)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________21098765_____]
((in[31 + inPos] & 2097151L) >>> 5)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [09876543_____________]
((in[31 + inPos] & 2097151L) >>> 13)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in[ 2 + inPos]) << 16) & 2097151L);
out[ 1 + outPos] =
// [765_____]
// [__________________210]
((((long)in[ 2 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in[ 3 + inPos]) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in[ 4 + inPos]) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in[ 5 + inPos]) << 19) & 2097151L);
out[ 2 + outPos] =
// [765432__]
// [_______________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in[ 7 + inPos]) << 14) & 2097151L);
out[ 3 + outPos] =
// [7_______]
// [____________________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in[ 9 + inPos]) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in[10 + inPos]) << 17) & 2097151L);
out[ 4 + outPos] =
// [7654____]
// [_________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in[13 + inPos]) << 20) & 2097151L);
out[ 5 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in[15 + inPos]) << 15) & 2097151L);
out[ 6 + outPos] =
// [76______]
// [___________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in[18 + inPos]) << 18) & 2097151L);
out[ 7 + outPos] =
// [76543___]
// [________________43210]
((((long)in[18 + inPos]) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in[19 + inPos]) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in[20 + inPos]) << 13) & 2097151L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in.get( 2 + inPos)) << 16) & 2097151L);
out[ 1 + outPos] =
// [765_____]
// [__________________210]
((((long)in.get( 2 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in.get( 3 + inPos)) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in.get( 4 + inPos)) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in.get( 5 + inPos)) << 19) & 2097151L);
out[ 2 + outPos] =
// [765432__]
// [_______________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in.get( 7 + inPos)) << 14) & 2097151L);
out[ 3 + outPos] =
// [7_______]
// [____________________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in.get( 9 + inPos)) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in.get(10 + inPos)) << 17) & 2097151L);
out[ 4 + outPos] =
// [7654____]
// [_________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in.get(13 + inPos)) << 20) & 2097151L);
out[ 5 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in.get(15 + inPos)) << 15) & 2097151L);
out[ 6 + outPos] =
// [76______]
// [___________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in.get(18 + inPos)) << 18) & 2097151L);
out[ 7 + outPos] =
// [76543___]
// [________________43210]
((((long)in.get(18 + inPos)) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in.get(19 + inPos)) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in.get(20 + inPos)) << 13) & 2097151L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in[ 2 + inPos]) << 16) & 2097151L);
out[ 1 + outPos] =
// [765_____]
// [__________________210]
((((long)in[ 2 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in[ 3 + inPos]) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in[ 4 + inPos]) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in[ 5 + inPos]) << 19) & 2097151L);
out[ 2 + outPos] =
// [765432__]
// [_______________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in[ 7 + inPos]) << 14) & 2097151L);
out[ 3 + outPos] =
// [7_______]
// [____________________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in[ 9 + inPos]) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in[10 + inPos]) << 17) & 2097151L);
out[ 4 + outPos] =
// [7654____]
// [_________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in[13 + inPos]) << 20) & 2097151L);
out[ 5 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in[15 + inPos]) << 15) & 2097151L);
out[ 6 + outPos] =
// [76______]
// [___________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in[18 + inPos]) << 18) & 2097151L);
out[ 7 + outPos] =
// [76543___]
// [________________43210]
((((long)in[18 + inPos]) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in[19 + inPos]) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in[20 + inPos]) << 13) & 2097151L);
out[ 8 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in[23 + inPos]) << 16) & 2097151L);
out[ 9 + outPos] =
// [765_____]
// [__________________210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in[24 + inPos]) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in[25 + inPos]) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in[26 + inPos]) << 19) & 2097151L);
out[10 + outPos] =
// [765432__]
// [_______________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in[28 + inPos]) << 14) & 2097151L);
out[11 + outPos] =
// [7_______]
// [____________________0]
((((long)in[28 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in[29 + inPos]) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in[30 + inPos]) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in[31 + inPos]) << 17) & 2097151L);
out[12 + outPos] =
// [7654____]
// [_________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in[34 + inPos]) << 20) & 2097151L);
out[13 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in[34 + inPos]) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in[35 + inPos]) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in[36 + inPos]) << 15) & 2097151L);
out[14 + outPos] =
// [76______]
// [___________________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in[38 + inPos]) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in[39 + inPos]) << 18) & 2097151L);
out[15 + outPos] =
// [76543___]
// [________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L);
out[16 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in[44 + inPos]) << 16) & 2097151L);
out[17 + outPos] =
// [765_____]
// [__________________210]
((((long)in[44 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in[45 + inPos]) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in[46 + inPos]) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in[47 + inPos]) << 19) & 2097151L);
out[18 + outPos] =
// [765432__]
// [_______________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in[49 + inPos]) << 14) & 2097151L);
out[19 + outPos] =
// [7_______]
// [____________________0]
((((long)in[49 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in[50 + inPos]) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in[51 + inPos]) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in[52 + inPos]) << 17) & 2097151L);
out[20 + outPos] =
// [7654____]
// [_________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in[55 + inPos]) << 20) & 2097151L);
out[21 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in[55 + inPos]) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in[56 + inPos]) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in[57 + inPos]) << 15) & 2097151L);
out[22 + outPos] =
// [76______]
// [___________________10]
((((long)in[57 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in[58 + inPos]) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in[59 + inPos]) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in[60 + inPos]) << 18) & 2097151L);
out[23 + outPos] =
// [76543___]
// [________________43210]
((((long)in[60 + inPos]) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in[61 + inPos]) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in[62 + inPos]) << 13) & 2097151L);
out[24 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in[65 + inPos]) << 16) & 2097151L);
out[25 + outPos] =
// [765_____]
// [__________________210]
((((long)in[65 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in[66 + inPos]) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in[67 + inPos]) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in[68 + inPos]) << 19) & 2097151L);
out[26 + outPos] =
// [765432__]
// [_______________543210]
((((long)in[68 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in[69 + inPos]) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in[70 + inPos]) << 14) & 2097151L);
out[27 + outPos] =
// [7_______]
// [____________________0]
((((long)in[70 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in[71 + inPos]) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in[72 + inPos]) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in[73 + inPos]) << 17) & 2097151L);
out[28 + outPos] =
// [7654____]
// [_________________3210]
((((long)in[73 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in[74 + inPos]) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in[75 + inPos]) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in[76 + inPos]) << 20) & 2097151L);
out[29 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in[76 + inPos]) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in[77 + inPos]) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in[78 + inPos]) << 15) & 2097151L);
out[30 + outPos] =
// [76______]
// [___________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in[81 + inPos]) << 18) & 2097151L);
out[31 + outPos] =
// [76543___]
// [________________43210]
((((long)in[81 + inPos]) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in[82 + inPos]) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in[83 + inPos]) << 13) & 2097151L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in.get( 2 + inPos)) << 16) & 2097151L);
out[ 1 + outPos] =
// [765_____]
// [__________________210]
((((long)in.get( 2 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in.get( 3 + inPos)) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in.get( 4 + inPos)) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in.get( 5 + inPos)) << 19) & 2097151L);
out[ 2 + outPos] =
// [765432__]
// [_______________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in.get( 7 + inPos)) << 14) & 2097151L);
out[ 3 + outPos] =
// [7_______]
// [____________________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in.get( 9 + inPos)) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in.get(10 + inPos)) << 17) & 2097151L);
out[ 4 + outPos] =
// [7654____]
// [_________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in.get(13 + inPos)) << 20) & 2097151L);
out[ 5 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in.get(15 + inPos)) << 15) & 2097151L);
out[ 6 + outPos] =
// [76______]
// [___________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in.get(18 + inPos)) << 18) & 2097151L);
out[ 7 + outPos] =
// [76543___]
// [________________43210]
((((long)in.get(18 + inPos)) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in.get(19 + inPos)) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in.get(20 + inPos)) << 13) & 2097151L);
out[ 8 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in.get(23 + inPos)) << 16) & 2097151L);
out[ 9 + outPos] =
// [765_____]
// [__________________210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in.get(24 + inPos)) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in.get(25 + inPos)) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in.get(26 + inPos)) << 19) & 2097151L);
out[10 + outPos] =
// [765432__]
// [_______________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in.get(28 + inPos)) << 14) & 2097151L);
out[11 + outPos] =
// [7_______]
// [____________________0]
((((long)in.get(28 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in.get(29 + inPos)) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in.get(30 + inPos)) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in.get(31 + inPos)) << 17) & 2097151L);
out[12 + outPos] =
// [7654____]
// [_________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in.get(34 + inPos)) << 20) & 2097151L);
out[13 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in.get(34 + inPos)) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in.get(35 + inPos)) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in.get(36 + inPos)) << 15) & 2097151L);
out[14 + outPos] =
// [76______]
// [___________________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in.get(38 + inPos)) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in.get(39 + inPos)) << 18) & 2097151L);
out[15 + outPos] =
// [76543___]
// [________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L);
out[16 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in.get(44 + inPos)) << 16) & 2097151L);
out[17 + outPos] =
// [765_____]
// [__________________210]
((((long)in.get(44 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in.get(45 + inPos)) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in.get(46 + inPos)) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in.get(47 + inPos)) << 19) & 2097151L);
out[18 + outPos] =
// [765432__]
// [_______________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in.get(49 + inPos)) << 14) & 2097151L);
out[19 + outPos] =
// [7_______]
// [____________________0]
((((long)in.get(49 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in.get(50 + inPos)) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in.get(51 + inPos)) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in.get(52 + inPos)) << 17) & 2097151L);
out[20 + outPos] =
// [7654____]
// [_________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in.get(55 + inPos)) << 20) & 2097151L);
out[21 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in.get(55 + inPos)) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in.get(56 + inPos)) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in.get(57 + inPos)) << 15) & 2097151L);
out[22 + outPos] =
// [76______]
// [___________________10]
((((long)in.get(57 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in.get(58 + inPos)) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in.get(59 + inPos)) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in.get(60 + inPos)) << 18) & 2097151L);
out[23 + outPos] =
// [76543___]
// [________________43210]
((((long)in.get(60 + inPos)) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in.get(61 + inPos)) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in.get(62 + inPos)) << 13) & 2097151L);
out[24 + outPos] =
// [76543210]
// [_____________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [_____54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [___43210]
// [09876________________]
((((long)in.get(65 + inPos)) << 16) & 2097151L);
out[25 + outPos] =
// [765_____]
// [__________________210]
((((long)in.get(65 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________09876543___]
((((long)in.get(66 + inPos)) << 3) & 2047L)
| // [76543210]
// [__87654321___________]
((((long)in.get(67 + inPos)) << 11) & 524287L)
| // [______10]
// [09___________________]
((((long)in.get(68 + inPos)) << 19) & 2097151L);
out[26 + outPos] =
// [765432__]
// [_______________543210]
((((long)in.get(68 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______32109876______]
((((long)in.get(69 + inPos)) << 6) & 16383L)
| // [_6543210]
// [0987654______________]
((((long)in.get(70 + inPos)) << 14) & 2097151L);
out[27 + outPos] =
// [7_______]
// [____________________0]
((((long)in.get(70 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________87654321_]
((((long)in.get(71 + inPos)) << 1) & 511L)
| // [76543210]
// [____65432109_________]
((((long)in.get(72 + inPos)) << 9) & 131071L)
| // [____3210]
// [0987_________________]
((((long)in.get(73 + inPos)) << 17) & 2097151L);
out[28 + outPos] =
// [7654____]
// [_________________3210]
((((long)in.get(73 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________10987654____]
((((long)in.get(74 + inPos)) << 4) & 4095L)
| // [76543210]
// [_98765432____________]
((((long)in.get(75 + inPos)) << 12) & 1048575L)
| // [_______0]
// [0____________________]
((((long)in.get(76 + inPos)) << 20) & 2097151L);
out[29 + outPos] =
// [7654321_]
// [______________6543210]
((((long)in.get(76 + inPos)) >> 1) & 127L)
| // [76543210]
// [______43210987_______]
((((long)in.get(77 + inPos)) << 7) & 32767L)
| // [__543210]
// [098765_______________]
((((long)in.get(78 + inPos)) << 15) & 2097151L);
out[30 + outPos] =
// [76______]
// [___________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [___76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [_____210]
// [098__________________]
((((long)in.get(81 + inPos)) << 18) & 2097151L);
out[31 + outPos] =
// [76543___]
// [________________43210]
((((long)in.get(81 + inPos)) >> 3) & 31L)
| // [76543210]
// [________21098765_____]
((((long)in.get(82 + inPos)) << 5) & 8191L)
| // [76543210]
// [09876543_____________]
((((long)in.get(83 + inPos)) << 13) & 2097151L);
}
}
private static final class Packer22 extends BytePackerForLong {
private Packer22() {
super(22);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[ 0 + inPos] & 4194303L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[ 0 + inPos] & 4194303L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[ 0 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[ 1 + inPos] & 4194303L) << 6)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[ 1 + inPos] & 4194303L) >>> 2)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[ 1 + inPos] & 4194303L) >>> 10)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[ 1 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[ 2 + inPos] & 4194303L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[ 2 + inPos] & 4194303L) >>> 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[ 2 + inPos] & 4194303L) >>> 12)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[ 2 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[ 3 + inPos] & 4194303L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[ 3 + inPos] & 4194303L) >>> 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[ 3 + inPos] & 4194303L) >>> 14)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[ 4 + inPos] & 4194303L))) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[ 4 + inPos] & 4194303L) >>> 8)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[ 4 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[ 5 + inPos] & 4194303L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[ 5 + inPos] & 4194303L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[ 5 + inPos] & 4194303L) >>> 10)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[ 5 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[ 6 + inPos] & 4194303L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[ 6 + inPos] & 4194303L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[ 6 + inPos] & 4194303L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[ 6 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[ 7 + inPos] & 4194303L) << 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[ 7 + inPos] & 4194303L) >>> 6)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[ 7 + inPos] & 4194303L) >>> 14)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[ 0 + inPos] & 4194303L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[ 0 + inPos] & 4194303L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[ 0 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[ 1 + inPos] & 4194303L) << 6)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[ 1 + inPos] & 4194303L) >>> 2)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[ 1 + inPos] & 4194303L) >>> 10)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[ 1 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[ 2 + inPos] & 4194303L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[ 2 + inPos] & 4194303L) >>> 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[ 2 + inPos] & 4194303L) >>> 12)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[ 2 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[ 3 + inPos] & 4194303L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[ 3 + inPos] & 4194303L) >>> 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[ 3 + inPos] & 4194303L) >>> 14)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[ 4 + inPos] & 4194303L))) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[ 4 + inPos] & 4194303L) >>> 8)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[ 4 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[ 5 + inPos] & 4194303L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[ 5 + inPos] & 4194303L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[ 5 + inPos] & 4194303L) >>> 10)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[ 5 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[ 6 + inPos] & 4194303L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[ 6 + inPos] & 4194303L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[ 6 + inPos] & 4194303L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[ 6 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[ 7 + inPos] & 4194303L) << 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[ 7 + inPos] & 4194303L) >>> 6)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[ 7 + inPos] & 4194303L) >>> 14)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[ 8 + inPos] & 4194303L))) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[ 8 + inPos] & 4194303L) >>> 8)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[ 8 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[ 9 + inPos] & 4194303L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[ 9 + inPos] & 4194303L) >>> 2)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[ 9 + inPos] & 4194303L) >>> 10)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[ 9 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[10 + inPos] & 4194303L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[10 + inPos] & 4194303L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[10 + inPos] & 4194303L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[10 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[11 + inPos] & 4194303L) << 2)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[11 + inPos] & 4194303L) >>> 6)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[11 + inPos] & 4194303L) >>> 14)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[12 + inPos] & 4194303L))) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[12 + inPos] & 4194303L) >>> 8)) & 255);
out[35 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[12 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[13 + inPos] & 4194303L) << 6)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[13 + inPos] & 4194303L) >>> 2)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[13 + inPos] & 4194303L) >>> 10)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[13 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[14 + inPos] & 4194303L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[14 + inPos] & 4194303L) >>> 4)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[14 + inPos] & 4194303L) >>> 12)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[14 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[15 + inPos] & 4194303L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[15 + inPos] & 4194303L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[15 + inPos] & 4194303L) >>> 14)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[16 + inPos] & 4194303L))) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[16 + inPos] & 4194303L) >>> 8)) & 255);
out[46 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[16 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[17 + inPos] & 4194303L) << 6)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[17 + inPos] & 4194303L) >>> 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[17 + inPos] & 4194303L) >>> 10)) & 255);
out[49 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[17 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[18 + inPos] & 4194303L) << 4)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[18 + inPos] & 4194303L) >>> 4)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[18 + inPos] & 4194303L) >>> 12)) & 255);
out[52 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[18 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[19 + inPos] & 4194303L) << 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[19 + inPos] & 4194303L) >>> 6)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[19 + inPos] & 4194303L) >>> 14)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[20 + inPos] & 4194303L))) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[20 + inPos] & 4194303L) >>> 8)) & 255);
out[57 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[20 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[21 + inPos] & 4194303L) << 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[21 + inPos] & 4194303L) >>> 2)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[21 + inPos] & 4194303L) >>> 10)) & 255);
out[60 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[21 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[22 + inPos] & 4194303L) << 4)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[22 + inPos] & 4194303L) >>> 4)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[22 + inPos] & 4194303L) >>> 12)) & 255);
out[63 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[22 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[23 + inPos] & 4194303L) << 2)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[23 + inPos] & 4194303L) >>> 6)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[23 + inPos] & 4194303L) >>> 14)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[24 + inPos] & 4194303L))) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[24 + inPos] & 4194303L) >>> 8)) & 255);
out[68 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[24 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[25 + inPos] & 4194303L) << 6)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[25 + inPos] & 4194303L) >>> 2)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[25 + inPos] & 4194303L) >>> 10)) & 255);
out[71 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[25 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[26 + inPos] & 4194303L) << 4)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[26 + inPos] & 4194303L) >>> 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[26 + inPos] & 4194303L) >>> 12)) & 255);
out[74 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[26 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[27 + inPos] & 4194303L) << 2)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[27 + inPos] & 4194303L) >>> 6)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[27 + inPos] & 4194303L) >>> 14)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______________76543210]
((in[28 + inPos] & 4194303L))) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [______54321098________]
((in[28 + inPos] & 4194303L) >>> 8)) & 255);
out[79 + outPos] = (byte)((
// [__543210]
// [109876________________]
((in[28 + inPos] & 4194303L) >>> 16)
| // [76______]
// [____________________10]
((in[29 + inPos] & 4194303L) << 6)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________98765432__]
((in[29 + inPos] & 4194303L) >>> 2)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____76543210__________]
((in[29 + inPos] & 4194303L) >>> 10)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [1098__________________]
((in[29 + inPos] & 4194303L) >>> 18)
| // [7654____]
// [__________________3210]
((in[30 + inPos] & 4194303L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________10987654____]
((in[30 + inPos] & 4194303L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__98765432____________]
((in[30 + inPos] & 4194303L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [______10]
// [10____________________]
((in[30 + inPos] & 4194303L) >>> 20)
| // [765432__]
// [________________543210]
((in[31 + inPos] & 4194303L) << 2)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________32109876______]
((in[31 + inPos] & 4194303L) >>> 6)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [10987654______________]
((in[31 + inPos] & 4194303L) >>> 14)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[ 2 + inPos]) << 16) & 4194303L);
out[ 1 + outPos] =
// [76______]
// [____________________10]
((((long)in[ 2 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[ 3 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[ 4 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[ 5 + inPos]) << 18) & 4194303L);
out[ 2 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[ 6 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[ 7 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[ 8 + inPos]) << 20) & 4194303L);
out[ 3 + outPos] =
// [765432__]
// [________________543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[ 9 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[10 + inPos]) << 14) & 4194303L);
out[ 4 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[11 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[12 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[13 + inPos]) << 16) & 4194303L);
out[ 5 + outPos] =
// [76______]
// [____________________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[14 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[15 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[16 + inPos]) << 18) & 4194303L);
out[ 6 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[19 + inPos]) << 20) & 4194303L);
out[ 7 + outPos] =
// [765432__]
// [________________543210]
((((long)in[19 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[20 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[21 + inPos]) << 14) & 4194303L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get( 2 + inPos)) << 16) & 4194303L);
out[ 1 + outPos] =
// [76______]
// [____________________10]
((((long)in.get( 2 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get( 3 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get( 4 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get( 5 + inPos)) << 18) & 4194303L);
out[ 2 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get( 6 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get( 7 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get( 8 + inPos)) << 20) & 4194303L);
out[ 3 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get( 9 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(10 + inPos)) << 14) & 4194303L);
out[ 4 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(11 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(12 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(13 + inPos)) << 16) & 4194303L);
out[ 5 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(15 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(16 + inPos)) << 18) & 4194303L);
out[ 6 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(19 + inPos)) << 20) & 4194303L);
out[ 7 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(19 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(20 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(21 + inPos)) << 14) & 4194303L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[ 2 + inPos]) << 16) & 4194303L);
out[ 1 + outPos] =
// [76______]
// [____________________10]
((((long)in[ 2 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[ 3 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[ 4 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[ 5 + inPos]) << 18) & 4194303L);
out[ 2 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[ 6 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[ 7 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[ 8 + inPos]) << 20) & 4194303L);
out[ 3 + outPos] =
// [765432__]
// [________________543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[ 9 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[10 + inPos]) << 14) & 4194303L);
out[ 4 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[11 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[12 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[13 + inPos]) << 16) & 4194303L);
out[ 5 + outPos] =
// [76______]
// [____________________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[14 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[15 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[16 + inPos]) << 18) & 4194303L);
out[ 6 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[19 + inPos]) << 20) & 4194303L);
out[ 7 + outPos] =
// [765432__]
// [________________543210]
((((long)in[19 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[20 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[21 + inPos]) << 14) & 4194303L);
out[ 8 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[22 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[23 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[24 + inPos]) << 16) & 4194303L);
out[ 9 + outPos] =
// [76______]
// [____________________10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[25 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[26 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[27 + inPos]) << 18) & 4194303L);
out[10 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[30 + inPos]) << 20) & 4194303L);
out[11 + outPos] =
// [765432__]
// [________________543210]
((((long)in[30 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[31 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[32 + inPos]) << 14) & 4194303L);
out[12 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[34 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[35 + inPos]) << 16) & 4194303L);
out[13 + outPos] =
// [76______]
// [____________________10]
((((long)in[35 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[36 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[37 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[38 + inPos]) << 18) & 4194303L);
out[14 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[39 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[40 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[41 + inPos]) << 20) & 4194303L);
out[15 + outPos] =
// [765432__]
// [________________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[43 + inPos]) << 14) & 4194303L);
out[16 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[44 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[45 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[46 + inPos]) << 16) & 4194303L);
out[17 + outPos] =
// [76______]
// [____________________10]
((((long)in[46 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[47 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[48 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[49 + inPos]) << 18) & 4194303L);
out[18 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[49 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[50 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[51 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[52 + inPos]) << 20) & 4194303L);
out[19 + outPos] =
// [765432__]
// [________________543210]
((((long)in[52 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[53 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[54 + inPos]) << 14) & 4194303L);
out[20 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[55 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[56 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[57 + inPos]) << 16) & 4194303L);
out[21 + outPos] =
// [76______]
// [____________________10]
((((long)in[57 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[58 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[59 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[60 + inPos]) << 18) & 4194303L);
out[22 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[60 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[61 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[62 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[63 + inPos]) << 20) & 4194303L);
out[23 + outPos] =
// [765432__]
// [________________543210]
((((long)in[63 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[64 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[65 + inPos]) << 14) & 4194303L);
out[24 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[66 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[67 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[68 + inPos]) << 16) & 4194303L);
out[25 + outPos] =
// [76______]
// [____________________10]
((((long)in[68 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[69 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[70 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[71 + inPos]) << 18) & 4194303L);
out[26 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[71 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[72 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[73 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[74 + inPos]) << 20) & 4194303L);
out[27 + outPos] =
// [765432__]
// [________________543210]
((((long)in[74 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[75 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[76 + inPos]) << 14) & 4194303L);
out[28 + outPos] =
// [76543210]
// [______________76543210]
((((long)in[77 + inPos]) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in[78 + inPos]) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in[79 + inPos]) << 16) & 4194303L);
out[29 + outPos] =
// [76______]
// [____________________10]
((((long)in[79 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in[80 + inPos]) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in[81 + inPos]) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in[82 + inPos]) << 18) & 4194303L);
out[30 + outPos] =
// [7654____]
// [__________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in[85 + inPos]) << 20) & 4194303L);
out[31 + outPos] =
// [765432__]
// [________________543210]
((((long)in[85 + inPos]) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in[86 + inPos]) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in[87 + inPos]) << 14) & 4194303L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get( 2 + inPos)) << 16) & 4194303L);
out[ 1 + outPos] =
// [76______]
// [____________________10]
((((long)in.get( 2 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get( 3 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get( 4 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get( 5 + inPos)) << 18) & 4194303L);
out[ 2 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get( 6 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get( 7 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get( 8 + inPos)) << 20) & 4194303L);
out[ 3 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get( 9 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(10 + inPos)) << 14) & 4194303L);
out[ 4 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(11 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(12 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(13 + inPos)) << 16) & 4194303L);
out[ 5 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(15 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(16 + inPos)) << 18) & 4194303L);
out[ 6 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(19 + inPos)) << 20) & 4194303L);
out[ 7 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(19 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(20 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(21 + inPos)) << 14) & 4194303L);
out[ 8 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(22 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(23 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(24 + inPos)) << 16) & 4194303L);
out[ 9 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(25 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(26 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(27 + inPos)) << 18) & 4194303L);
out[10 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(30 + inPos)) << 20) & 4194303L);
out[11 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(30 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(31 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(32 + inPos)) << 14) & 4194303L);
out[12 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(34 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(35 + inPos)) << 16) & 4194303L);
out[13 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(35 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(36 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(37 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(38 + inPos)) << 18) & 4194303L);
out[14 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(39 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(40 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(41 + inPos)) << 20) & 4194303L);
out[15 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(43 + inPos)) << 14) & 4194303L);
out[16 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(44 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(45 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(46 + inPos)) << 16) & 4194303L);
out[17 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(46 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(47 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(48 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(49 + inPos)) << 18) & 4194303L);
out[18 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(49 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(50 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(51 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(52 + inPos)) << 20) & 4194303L);
out[19 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(52 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(53 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(54 + inPos)) << 14) & 4194303L);
out[20 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(55 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(56 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(57 + inPos)) << 16) & 4194303L);
out[21 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(57 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(58 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(59 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(60 + inPos)) << 18) & 4194303L);
out[22 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(60 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(61 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(62 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(63 + inPos)) << 20) & 4194303L);
out[23 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(63 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(64 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(65 + inPos)) << 14) & 4194303L);
out[24 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(66 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(67 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(68 + inPos)) << 16) & 4194303L);
out[25 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(68 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(69 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(70 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(71 + inPos)) << 18) & 4194303L);
out[26 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(71 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(72 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(73 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(74 + inPos)) << 20) & 4194303L);
out[27 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(74 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(75 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(76 + inPos)) << 14) & 4194303L);
out[28 + outPos] =
// [76543210]
// [______________76543210]
((((long)in.get(77 + inPos)) ) & 255L)
| // [76543210]
// [______54321098________]
((((long)in.get(78 + inPos)) << 8) & 65535L)
| // [__543210]
// [109876________________]
((((long)in.get(79 + inPos)) << 16) & 4194303L);
out[29 + outPos] =
// [76______]
// [____________________10]
((((long)in.get(79 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________98765432__]
((((long)in.get(80 + inPos)) << 2) & 1023L)
| // [76543210]
// [____76543210__________]
((((long)in.get(81 + inPos)) << 10) & 262143L)
| // [____3210]
// [1098__________________]
((((long)in.get(82 + inPos)) << 18) & 4194303L);
out[30 + outPos] =
// [7654____]
// [__________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [__98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [______10]
// [10____________________]
((((long)in.get(85 + inPos)) << 20) & 4194303L);
out[31 + outPos] =
// [765432__]
// [________________543210]
((((long)in.get(85 + inPos)) >> 2) & 63L)
| // [76543210]
// [________32109876______]
((((long)in.get(86 + inPos)) << 6) & 16383L)
| // [76543210]
// [10987654______________]
((((long)in.get(87 + inPos)) << 14) & 4194303L);
}
}
private static final class Packer23 extends BytePackerForLong {
private Packer23() {
super(23);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________76543210]
((in[ 0 + inPos] & 8388607L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______54321098________]
((in[ 0 + inPos] & 8388607L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_6543210]
// [2109876________________]
((in[ 0 + inPos] & 8388607L) >>> 16)
| // [7_______]
// [______________________0]
((in[ 1 + inPos] & 8388607L) << 7)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________87654321_]
((in[ 1 + inPos] & 8388607L) >>> 1)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______65432109_________]
((in[ 1 + inPos] & 8388607L) >>> 9)) & 255);
out[ 5 + outPos] = (byte)((
// [__543210]
// [210987_________________]
((in[ 1 + inPos] & 8388607L) >>> 17)
| // [76______]
// [_____________________10]
((in[ 2 + inPos] & 8388607L) << 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_____________98765432__]
((in[ 2 + inPos] & 8388607L) >>> 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_____76543210__________]
((in[ 2 + inPos] & 8388607L) >>> 10)) & 255);
out[ 8 + outPos] = (byte)((
// [___43210]
// [21098__________________]
((in[ 2 + inPos] & 8388607L) >>> 18)
| // [765_____]
// [____________________210]
((in[ 3 + inPos] & 8388607L) << 5)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________09876543___]
((in[ 3 + inPos] & 8388607L) >>> 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____87654321___________]
((in[ 3 + inPos] & 8388607L) >>> 11)) & 255);
out[11 + outPos] = (byte)((
// [____3210]
// [2109___________________]
((in[ 3 + inPos] & 8388607L) >>> 19)
| // [7654____]
// [___________________3210]
((in[ 4 + inPos] & 8388607L) << 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [___________10987654____]
((in[ 4 + inPos] & 8388607L) >>> 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___98765432____________]
((in[ 4 + inPos] & 8388607L) >>> 12)) & 255);
out[14 + outPos] = (byte)((
// [_____210]
// [210____________________]
((in[ 4 + inPos] & 8388607L) >>> 20)
| // [76543___]
// [__________________43210]
((in[ 5 + inPos] & 8388607L) << 3)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________21098765_____]
((in[ 5 + inPos] & 8388607L) >>> 5)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__09876543_____________]
((in[ 5 + inPos] & 8388607L) >>> 13)) & 255);
out[17 + outPos] = (byte)((
// [______10]
// [21_____________________]
((in[ 5 + inPos] & 8388607L) >>> 21)
| // [765432__]
// [_________________543210]
((in[ 6 + inPos] & 8388607L) << 2)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_________32109876______]
((in[ 6 + inPos] & 8388607L) >>> 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_10987654______________]
((in[ 6 + inPos] & 8388607L) >>> 14)) & 255);
out[20 + outPos] = (byte)((
// [_______0]
// [2______________________]
((in[ 6 + inPos] & 8388607L) >>> 22)
| // [7654321_]
// [________________6543210]
((in[ 7 + inPos] & 8388607L) << 1)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________43210987_______]
((in[ 7 + inPos] & 8388607L) >>> 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [21098765_______________]
((in[ 7 + inPos] & 8388607L) >>> 15)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________76543210]
((in[ 0 + inPos] & 8388607L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______54321098________]
((in[ 0 + inPos] & 8388607L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [_6543210]
// [2109876________________]
((in[ 0 + inPos] & 8388607L) >>> 16)
| // [7_______]
// [______________________0]
((in[ 1 + inPos] & 8388607L) << 7)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________87654321_]
((in[ 1 + inPos] & 8388607L) >>> 1)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______65432109_________]
((in[ 1 + inPos] & 8388607L) >>> 9)) & 255);
out[ 5 + outPos] = (byte)((
// [__543210]
// [210987_________________]
((in[ 1 + inPos] & 8388607L) >>> 17)
| // [76______]
// [_____________________10]
((in[ 2 + inPos] & 8388607L) << 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_____________98765432__]
((in[ 2 + inPos] & 8388607L) >>> 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_____76543210__________]
((in[ 2 + inPos] & 8388607L) >>> 10)) & 255);
out[ 8 + outPos] = (byte)((
// [___43210]
// [21098__________________]
((in[ 2 + inPos] & 8388607L) >>> 18)
| // [765_____]
// [____________________210]
((in[ 3 + inPos] & 8388607L) << 5)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________09876543___]
((in[ 3 + inPos] & 8388607L) >>> 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____87654321___________]
((in[ 3 + inPos] & 8388607L) >>> 11)) & 255);
out[11 + outPos] = (byte)((
// [____3210]
// [2109___________________]
((in[ 3 + inPos] & 8388607L) >>> 19)
| // [7654____]
// [___________________3210]
((in[ 4 + inPos] & 8388607L) << 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [___________10987654____]
((in[ 4 + inPos] & 8388607L) >>> 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___98765432____________]
((in[ 4 + inPos] & 8388607L) >>> 12)) & 255);
out[14 + outPos] = (byte)((
// [_____210]
// [210____________________]
((in[ 4 + inPos] & 8388607L) >>> 20)
| // [76543___]
// [__________________43210]
((in[ 5 + inPos] & 8388607L) << 3)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________21098765_____]
((in[ 5 + inPos] & 8388607L) >>> 5)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__09876543_____________]
((in[ 5 + inPos] & 8388607L) >>> 13)) & 255);
out[17 + outPos] = (byte)((
// [______10]
// [21_____________________]
((in[ 5 + inPos] & 8388607L) >>> 21)
| // [765432__]
// [_________________543210]
((in[ 6 + inPos] & 8388607L) << 2)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_________32109876______]
((in[ 6 + inPos] & 8388607L) >>> 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_10987654______________]
((in[ 6 + inPos] & 8388607L) >>> 14)) & 255);
out[20 + outPos] = (byte)((
// [_______0]
// [2______________________]
((in[ 6 + inPos] & 8388607L) >>> 22)
| // [7654321_]
// [________________6543210]
((in[ 7 + inPos] & 8388607L) << 1)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________43210987_______]
((in[ 7 + inPos] & 8388607L) >>> 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [21098765_______________]
((in[ 7 + inPos] & 8388607L) >>> 15)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_______________76543210]
((in[ 8 + inPos] & 8388607L))) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_______54321098________]
((in[ 8 + inPos] & 8388607L) >>> 8)) & 255);
out[25 + outPos] = (byte)((
// [_6543210]
// [2109876________________]
((in[ 8 + inPos] & 8388607L) >>> 16)
| // [7_______]
// [______________________0]
((in[ 9 + inPos] & 8388607L) << 7)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________87654321_]
((in[ 9 + inPos] & 8388607L) >>> 1)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______65432109_________]
((in[ 9 + inPos] & 8388607L) >>> 9)) & 255);
out[28 + outPos] = (byte)((
// [__543210]
// [210987_________________]
((in[ 9 + inPos] & 8388607L) >>> 17)
| // [76______]
// [_____________________10]
((in[10 + inPos] & 8388607L) << 6)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____________98765432__]
((in[10 + inPos] & 8388607L) >>> 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_____76543210__________]
((in[10 + inPos] & 8388607L) >>> 10)) & 255);
out[31 + outPos] = (byte)((
// [___43210]
// [21098__________________]
((in[10 + inPos] & 8388607L) >>> 18)
| // [765_____]
// [____________________210]
((in[11 + inPos] & 8388607L) << 5)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________09876543___]
((in[11 + inPos] & 8388607L) >>> 3)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____87654321___________]
((in[11 + inPos] & 8388607L) >>> 11)) & 255);
out[34 + outPos] = (byte)((
// [____3210]
// [2109___________________]
((in[11 + inPos] & 8388607L) >>> 19)
| // [7654____]
// [___________________3210]
((in[12 + inPos] & 8388607L) << 4)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________10987654____]
((in[12 + inPos] & 8388607L) >>> 4)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___98765432____________]
((in[12 + inPos] & 8388607L) >>> 12)) & 255);
out[37 + outPos] = (byte)((
// [_____210]
// [210____________________]
((in[12 + inPos] & 8388607L) >>> 20)
| // [76543___]
// [__________________43210]
((in[13 + inPos] & 8388607L) << 3)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________21098765_____]
((in[13 + inPos] & 8388607L) >>> 5)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__09876543_____________]
((in[13 + inPos] & 8388607L) >>> 13)) & 255);
out[40 + outPos] = (byte)((
// [______10]
// [21_____________________]
((in[13 + inPos] & 8388607L) >>> 21)
| // [765432__]
// [_________________543210]
((in[14 + inPos] & 8388607L) << 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_________32109876______]
((in[14 + inPos] & 8388607L) >>> 6)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_10987654______________]
((in[14 + inPos] & 8388607L) >>> 14)) & 255);
out[43 + outPos] = (byte)((
// [_______0]
// [2______________________]
((in[14 + inPos] & 8388607L) >>> 22)
| // [7654321_]
// [________________6543210]
((in[15 + inPos] & 8388607L) << 1)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________43210987_______]
((in[15 + inPos] & 8388607L) >>> 7)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [21098765_______________]
((in[15 + inPos] & 8388607L) >>> 15)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_______________76543210]
((in[16 + inPos] & 8388607L))) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______54321098________]
((in[16 + inPos] & 8388607L) >>> 8)) & 255);
out[48 + outPos] = (byte)((
// [_6543210]
// [2109876________________]
((in[16 + inPos] & 8388607L) >>> 16)
| // [7_______]
// [______________________0]
((in[17 + inPos] & 8388607L) << 7)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______________87654321_]
((in[17 + inPos] & 8388607L) >>> 1)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [______65432109_________]
((in[17 + inPos] & 8388607L) >>> 9)) & 255);
out[51 + outPos] = (byte)((
// [__543210]
// [210987_________________]
((in[17 + inPos] & 8388607L) >>> 17)
| // [76______]
// [_____________________10]
((in[18 + inPos] & 8388607L) << 6)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_____________98765432__]
((in[18 + inPos] & 8388607L) >>> 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_____76543210__________]
((in[18 + inPos] & 8388607L) >>> 10)) & 255);
out[54 + outPos] = (byte)((
// [___43210]
// [21098__________________]
((in[18 + inPos] & 8388607L) >>> 18)
| // [765_____]
// [____________________210]
((in[19 + inPos] & 8388607L) << 5)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________09876543___]
((in[19 + inPos] & 8388607L) >>> 3)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____87654321___________]
((in[19 + inPos] & 8388607L) >>> 11)) & 255);
out[57 + outPos] = (byte)((
// [____3210]
// [2109___________________]
((in[19 + inPos] & 8388607L) >>> 19)
| // [7654____]
// [___________________3210]
((in[20 + inPos] & 8388607L) << 4)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [___________10987654____]
((in[20 + inPos] & 8388607L) >>> 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [___98765432____________]
((in[20 + inPos] & 8388607L) >>> 12)) & 255);
out[60 + outPos] = (byte)((
// [_____210]
// [210____________________]
((in[20 + inPos] & 8388607L) >>> 20)
| // [76543___]
// [__________________43210]
((in[21 + inPos] & 8388607L) << 3)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [__________21098765_____]
((in[21 + inPos] & 8388607L) >>> 5)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__09876543_____________]
((in[21 + inPos] & 8388607L) >>> 13)) & 255);
out[63 + outPos] = (byte)((
// [______10]
// [21_____________________]
((in[21 + inPos] & 8388607L) >>> 21)
| // [765432__]
// [_________________543210]
((in[22 + inPos] & 8388607L) << 2)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_________32109876______]
((in[22 + inPos] & 8388607L) >>> 6)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_10987654______________]
((in[22 + inPos] & 8388607L) >>> 14)) & 255);
out[66 + outPos] = (byte)((
// [_______0]
// [2______________________]
((in[22 + inPos] & 8388607L) >>> 22)
| // [7654321_]
// [________________6543210]
((in[23 + inPos] & 8388607L) << 1)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________43210987_______]
((in[23 + inPos] & 8388607L) >>> 7)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [21098765_______________]
((in[23 + inPos] & 8388607L) >>> 15)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______________76543210]
((in[24 + inPos] & 8388607L))) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_______54321098________]
((in[24 + inPos] & 8388607L) >>> 8)) & 255);
out[71 + outPos] = (byte)((
// [_6543210]
// [2109876________________]
((in[24 + inPos] & 8388607L) >>> 16)
| // [7_______]
// [______________________0]
((in[25 + inPos] & 8388607L) << 7)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [______________87654321_]
((in[25 + inPos] & 8388607L) >>> 1)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [______65432109_________]
((in[25 + inPos] & 8388607L) >>> 9)) & 255);
out[74 + outPos] = (byte)((
// [__543210]
// [210987_________________]
((in[25 + inPos] & 8388607L) >>> 17)
| // [76______]
// [_____________________10]
((in[26 + inPos] & 8388607L) << 6)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_____________98765432__]
((in[26 + inPos] & 8388607L) >>> 2)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_____76543210__________]
((in[26 + inPos] & 8388607L) >>> 10)) & 255);
out[77 + outPos] = (byte)((
// [___43210]
// [21098__________________]
((in[26 + inPos] & 8388607L) >>> 18)
| // [765_____]
// [____________________210]
((in[27 + inPos] & 8388607L) << 5)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________09876543___]
((in[27 + inPos] & 8388607L) >>> 3)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____87654321___________]
((in[27 + inPos] & 8388607L) >>> 11)) & 255);
out[80 + outPos] = (byte)((
// [____3210]
// [2109___________________]
((in[27 + inPos] & 8388607L) >>> 19)
| // [7654____]
// [___________________3210]
((in[28 + inPos] & 8388607L) << 4)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [___________10987654____]
((in[28 + inPos] & 8388607L) >>> 4)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [___98765432____________]
((in[28 + inPos] & 8388607L) >>> 12)) & 255);
out[83 + outPos] = (byte)((
// [_____210]
// [210____________________]
((in[28 + inPos] & 8388607L) >>> 20)
| // [76543___]
// [__________________43210]
((in[29 + inPos] & 8388607L) << 3)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__________21098765_____]
((in[29 + inPos] & 8388607L) >>> 5)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__09876543_____________]
((in[29 + inPos] & 8388607L) >>> 13)) & 255);
out[86 + outPos] = (byte)((
// [______10]
// [21_____________________]
((in[29 + inPos] & 8388607L) >>> 21)
| // [765432__]
// [_________________543210]
((in[30 + inPos] & 8388607L) << 2)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_________32109876______]
((in[30 + inPos] & 8388607L) >>> 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_10987654______________]
((in[30 + inPos] & 8388607L) >>> 14)) & 255);
out[89 + outPos] = (byte)((
// [_______0]
// [2______________________]
((in[30 + inPos] & 8388607L) >>> 22)
| // [7654321_]
// [________________6543210]
((in[31 + inPos] & 8388607L) << 1)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________43210987_______]
((in[31 + inPos] & 8388607L) >>> 7)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [21098765_______________]
((in[31 + inPos] & 8388607L) >>> 15)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in[ 2 + inPos]) << 16) & 8388607L);
out[ 1 + outPos] =
// [7_______]
// [______________________0]
((((long)in[ 2 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in[ 3 + inPos]) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in[ 4 + inPos]) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in[ 5 + inPos]) << 17) & 8388607L);
out[ 2 + outPos] =
// [76______]
// [_____________________10]
((((long)in[ 5 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in[ 6 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in[ 7 + inPos]) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in[ 8 + inPos]) << 18) & 8388607L);
out[ 3 + outPos] =
// [765_____]
// [____________________210]
((((long)in[ 8 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in[ 9 + inPos]) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in[10 + inPos]) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in[11 + inPos]) << 19) & 8388607L);
out[ 4 + outPos] =
// [7654____]
// [___________________3210]
((((long)in[11 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in[12 + inPos]) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in[13 + inPos]) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in[14 + inPos]) << 20) & 8388607L);
out[ 5 + outPos] =
// [76543___]
// [__________________43210]
((((long)in[14 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in[15 + inPos]) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in[16 + inPos]) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in[17 + inPos]) << 21) & 8388607L);
out[ 6 + outPos] =
// [765432__]
// [_________________543210]
((((long)in[17 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in[18 + inPos]) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in[19 + inPos]) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in[20 + inPos]) << 22) & 8388607L);
out[ 7 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in[20 + inPos]) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in[21 + inPos]) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in[22 + inPos]) << 15) & 8388607L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in.get( 2 + inPos)) << 16) & 8388607L);
out[ 1 + outPos] =
// [7_______]
// [______________________0]
((((long)in.get( 2 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in.get( 3 + inPos)) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in.get( 4 + inPos)) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in.get( 5 + inPos)) << 17) & 8388607L);
out[ 2 + outPos] =
// [76______]
// [_____________________10]
((((long)in.get( 5 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in.get( 6 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in.get( 7 + inPos)) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in.get( 8 + inPos)) << 18) & 8388607L);
out[ 3 + outPos] =
// [765_____]
// [____________________210]
((((long)in.get( 8 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in.get( 9 + inPos)) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in.get(10 + inPos)) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in.get(11 + inPos)) << 19) & 8388607L);
out[ 4 + outPos] =
// [7654____]
// [___________________3210]
((((long)in.get(11 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in.get(12 + inPos)) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in.get(13 + inPos)) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in.get(14 + inPos)) << 20) & 8388607L);
out[ 5 + outPos] =
// [76543___]
// [__________________43210]
((((long)in.get(14 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in.get(15 + inPos)) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in.get(16 + inPos)) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in.get(17 + inPos)) << 21) & 8388607L);
out[ 6 + outPos] =
// [765432__]
// [_________________543210]
((((long)in.get(17 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in.get(18 + inPos)) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in.get(19 + inPos)) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in.get(20 + inPos)) << 22) & 8388607L);
out[ 7 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in.get(20 + inPos)) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in.get(21 + inPos)) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in.get(22 + inPos)) << 15) & 8388607L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in[ 2 + inPos]) << 16) & 8388607L);
out[ 1 + outPos] =
// [7_______]
// [______________________0]
((((long)in[ 2 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in[ 3 + inPos]) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in[ 4 + inPos]) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in[ 5 + inPos]) << 17) & 8388607L);
out[ 2 + outPos] =
// [76______]
// [_____________________10]
((((long)in[ 5 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in[ 6 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in[ 7 + inPos]) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in[ 8 + inPos]) << 18) & 8388607L);
out[ 3 + outPos] =
// [765_____]
// [____________________210]
((((long)in[ 8 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in[ 9 + inPos]) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in[10 + inPos]) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in[11 + inPos]) << 19) & 8388607L);
out[ 4 + outPos] =
// [7654____]
// [___________________3210]
((((long)in[11 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in[12 + inPos]) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in[13 + inPos]) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in[14 + inPos]) << 20) & 8388607L);
out[ 5 + outPos] =
// [76543___]
// [__________________43210]
((((long)in[14 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in[15 + inPos]) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in[16 + inPos]) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in[17 + inPos]) << 21) & 8388607L);
out[ 6 + outPos] =
// [765432__]
// [_________________543210]
((((long)in[17 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in[18 + inPos]) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in[19 + inPos]) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in[20 + inPos]) << 22) & 8388607L);
out[ 7 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in[20 + inPos]) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in[21 + inPos]) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in[22 + inPos]) << 15) & 8388607L);
out[ 8 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in[23 + inPos]) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in[24 + inPos]) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in[25 + inPos]) << 16) & 8388607L);
out[ 9 + outPos] =
// [7_______]
// [______________________0]
((((long)in[25 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in[26 + inPos]) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in[27 + inPos]) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in[28 + inPos]) << 17) & 8388607L);
out[10 + outPos] =
// [76______]
// [_____________________10]
((((long)in[28 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in[29 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in[30 + inPos]) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in[31 + inPos]) << 18) & 8388607L);
out[11 + outPos] =
// [765_____]
// [____________________210]
((((long)in[31 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in[32 + inPos]) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in[33 + inPos]) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in[34 + inPos]) << 19) & 8388607L);
out[12 + outPos] =
// [7654____]
// [___________________3210]
((((long)in[34 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in[35 + inPos]) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in[36 + inPos]) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in[37 + inPos]) << 20) & 8388607L);
out[13 + outPos] =
// [76543___]
// [__________________43210]
((((long)in[37 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in[38 + inPos]) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in[39 + inPos]) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in[40 + inPos]) << 21) & 8388607L);
out[14 + outPos] =
// [765432__]
// [_________________543210]
((((long)in[40 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in[41 + inPos]) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in[42 + inPos]) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in[43 + inPos]) << 22) & 8388607L);
out[15 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in[43 + inPos]) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in[44 + inPos]) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in[45 + inPos]) << 15) & 8388607L);
out[16 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in[46 + inPos]) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in[47 + inPos]) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in[48 + inPos]) << 16) & 8388607L);
out[17 + outPos] =
// [7_______]
// [______________________0]
((((long)in[48 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in[49 + inPos]) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in[50 + inPos]) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in[51 + inPos]) << 17) & 8388607L);
out[18 + outPos] =
// [76______]
// [_____________________10]
((((long)in[51 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in[52 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in[53 + inPos]) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in[54 + inPos]) << 18) & 8388607L);
out[19 + outPos] =
// [765_____]
// [____________________210]
((((long)in[54 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in[55 + inPos]) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in[56 + inPos]) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in[57 + inPos]) << 19) & 8388607L);
out[20 + outPos] =
// [7654____]
// [___________________3210]
((((long)in[57 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in[58 + inPos]) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in[59 + inPos]) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in[60 + inPos]) << 20) & 8388607L);
out[21 + outPos] =
// [76543___]
// [__________________43210]
((((long)in[60 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in[61 + inPos]) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in[62 + inPos]) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in[63 + inPos]) << 21) & 8388607L);
out[22 + outPos] =
// [765432__]
// [_________________543210]
((((long)in[63 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in[64 + inPos]) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in[65 + inPos]) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in[66 + inPos]) << 22) & 8388607L);
out[23 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in[66 + inPos]) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in[67 + inPos]) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in[68 + inPos]) << 15) & 8388607L);
out[24 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in[69 + inPos]) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in[70 + inPos]) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in[71 + inPos]) << 16) & 8388607L);
out[25 + outPos] =
// [7_______]
// [______________________0]
((((long)in[71 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in[72 + inPos]) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in[73 + inPos]) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in[74 + inPos]) << 17) & 8388607L);
out[26 + outPos] =
// [76______]
// [_____________________10]
((((long)in[74 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in[75 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in[76 + inPos]) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in[77 + inPos]) << 18) & 8388607L);
out[27 + outPos] =
// [765_____]
// [____________________210]
((((long)in[77 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in[78 + inPos]) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in[79 + inPos]) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in[80 + inPos]) << 19) & 8388607L);
out[28 + outPos] =
// [7654____]
// [___________________3210]
((((long)in[80 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in[81 + inPos]) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in[82 + inPos]) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in[83 + inPos]) << 20) & 8388607L);
out[29 + outPos] =
// [76543___]
// [__________________43210]
((((long)in[83 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in[84 + inPos]) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in[85 + inPos]) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in[86 + inPos]) << 21) & 8388607L);
out[30 + outPos] =
// [765432__]
// [_________________543210]
((((long)in[86 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in[87 + inPos]) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in[88 + inPos]) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in[89 + inPos]) << 22) & 8388607L);
out[31 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in[89 + inPos]) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in[90 + inPos]) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in[91 + inPos]) << 15) & 8388607L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in.get( 2 + inPos)) << 16) & 8388607L);
out[ 1 + outPos] =
// [7_______]
// [______________________0]
((((long)in.get( 2 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in.get( 3 + inPos)) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in.get( 4 + inPos)) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in.get( 5 + inPos)) << 17) & 8388607L);
out[ 2 + outPos] =
// [76______]
// [_____________________10]
((((long)in.get( 5 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in.get( 6 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in.get( 7 + inPos)) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in.get( 8 + inPos)) << 18) & 8388607L);
out[ 3 + outPos] =
// [765_____]
// [____________________210]
((((long)in.get( 8 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in.get( 9 + inPos)) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in.get(10 + inPos)) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in.get(11 + inPos)) << 19) & 8388607L);
out[ 4 + outPos] =
// [7654____]
// [___________________3210]
((((long)in.get(11 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in.get(12 + inPos)) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in.get(13 + inPos)) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in.get(14 + inPos)) << 20) & 8388607L);
out[ 5 + outPos] =
// [76543___]
// [__________________43210]
((((long)in.get(14 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in.get(15 + inPos)) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in.get(16 + inPos)) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in.get(17 + inPos)) << 21) & 8388607L);
out[ 6 + outPos] =
// [765432__]
// [_________________543210]
((((long)in.get(17 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in.get(18 + inPos)) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in.get(19 + inPos)) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in.get(20 + inPos)) << 22) & 8388607L);
out[ 7 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in.get(20 + inPos)) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in.get(21 + inPos)) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in.get(22 + inPos)) << 15) & 8388607L);
out[ 8 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in.get(23 + inPos)) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in.get(24 + inPos)) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in.get(25 + inPos)) << 16) & 8388607L);
out[ 9 + outPos] =
// [7_______]
// [______________________0]
((((long)in.get(25 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in.get(26 + inPos)) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in.get(27 + inPos)) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in.get(28 + inPos)) << 17) & 8388607L);
out[10 + outPos] =
// [76______]
// [_____________________10]
((((long)in.get(28 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in.get(29 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in.get(30 + inPos)) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in.get(31 + inPos)) << 18) & 8388607L);
out[11 + outPos] =
// [765_____]
// [____________________210]
((((long)in.get(31 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in.get(32 + inPos)) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in.get(33 + inPos)) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in.get(34 + inPos)) << 19) & 8388607L);
out[12 + outPos] =
// [7654____]
// [___________________3210]
((((long)in.get(34 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in.get(35 + inPos)) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in.get(36 + inPos)) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in.get(37 + inPos)) << 20) & 8388607L);
out[13 + outPos] =
// [76543___]
// [__________________43210]
((((long)in.get(37 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in.get(38 + inPos)) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in.get(39 + inPos)) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in.get(40 + inPos)) << 21) & 8388607L);
out[14 + outPos] =
// [765432__]
// [_________________543210]
((((long)in.get(40 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in.get(41 + inPos)) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in.get(42 + inPos)) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in.get(43 + inPos)) << 22) & 8388607L);
out[15 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in.get(43 + inPos)) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in.get(44 + inPos)) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in.get(45 + inPos)) << 15) & 8388607L);
out[16 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in.get(46 + inPos)) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in.get(47 + inPos)) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in.get(48 + inPos)) << 16) & 8388607L);
out[17 + outPos] =
// [7_______]
// [______________________0]
((((long)in.get(48 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in.get(49 + inPos)) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in.get(50 + inPos)) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in.get(51 + inPos)) << 17) & 8388607L);
out[18 + outPos] =
// [76______]
// [_____________________10]
((((long)in.get(51 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in.get(52 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in.get(53 + inPos)) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in.get(54 + inPos)) << 18) & 8388607L);
out[19 + outPos] =
// [765_____]
// [____________________210]
((((long)in.get(54 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in.get(55 + inPos)) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in.get(56 + inPos)) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in.get(57 + inPos)) << 19) & 8388607L);
out[20 + outPos] =
// [7654____]
// [___________________3210]
((((long)in.get(57 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in.get(58 + inPos)) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in.get(59 + inPos)) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in.get(60 + inPos)) << 20) & 8388607L);
out[21 + outPos] =
// [76543___]
// [__________________43210]
((((long)in.get(60 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in.get(61 + inPos)) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in.get(62 + inPos)) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in.get(63 + inPos)) << 21) & 8388607L);
out[22 + outPos] =
// [765432__]
// [_________________543210]
((((long)in.get(63 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in.get(64 + inPos)) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in.get(65 + inPos)) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in.get(66 + inPos)) << 22) & 8388607L);
out[23 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in.get(66 + inPos)) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in.get(67 + inPos)) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in.get(68 + inPos)) << 15) & 8388607L);
out[24 + outPos] =
// [76543210]
// [_______________76543210]
((((long)in.get(69 + inPos)) ) & 255L)
| // [76543210]
// [_______54321098________]
((((long)in.get(70 + inPos)) << 8) & 65535L)
| // [_6543210]
// [2109876________________]
((((long)in.get(71 + inPos)) << 16) & 8388607L);
out[25 + outPos] =
// [7_______]
// [______________________0]
((((long)in.get(71 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________87654321_]
((((long)in.get(72 + inPos)) << 1) & 511L)
| // [76543210]
// [______65432109_________]
((((long)in.get(73 + inPos)) << 9) & 131071L)
| // [__543210]
// [210987_________________]
((((long)in.get(74 + inPos)) << 17) & 8388607L);
out[26 + outPos] =
// [76______]
// [_____________________10]
((((long)in.get(74 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________98765432__]
((((long)in.get(75 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____76543210__________]
((((long)in.get(76 + inPos)) << 10) & 262143L)
| // [___43210]
// [21098__________________]
((((long)in.get(77 + inPos)) << 18) & 8388607L);
out[27 + outPos] =
// [765_____]
// [____________________210]
((((long)in.get(77 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________09876543___]
((((long)in.get(78 + inPos)) << 3) & 2047L)
| // [76543210]
// [____87654321___________]
((((long)in.get(79 + inPos)) << 11) & 524287L)
| // [____3210]
// [2109___________________]
((((long)in.get(80 + inPos)) << 19) & 8388607L);
out[28 + outPos] =
// [7654____]
// [___________________3210]
((((long)in.get(80 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________10987654____]
((((long)in.get(81 + inPos)) << 4) & 4095L)
| // [76543210]
// [___98765432____________]
((((long)in.get(82 + inPos)) << 12) & 1048575L)
| // [_____210]
// [210____________________]
((((long)in.get(83 + inPos)) << 20) & 8388607L);
out[29 + outPos] =
// [76543___]
// [__________________43210]
((((long)in.get(83 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________21098765_____]
((((long)in.get(84 + inPos)) << 5) & 8191L)
| // [76543210]
// [__09876543_____________]
((((long)in.get(85 + inPos)) << 13) & 2097151L)
| // [______10]
// [21_____________________]
((((long)in.get(86 + inPos)) << 21) & 8388607L);
out[30 + outPos] =
// [765432__]
// [_________________543210]
((((long)in.get(86 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________32109876______]
((((long)in.get(87 + inPos)) << 6) & 16383L)
| // [76543210]
// [_10987654______________]
((((long)in.get(88 + inPos)) << 14) & 4194303L)
| // [_______0]
// [2______________________]
((((long)in.get(89 + inPos)) << 22) & 8388607L);
out[31 + outPos] =
// [7654321_]
// [________________6543210]
((((long)in.get(89 + inPos)) >> 1) & 127L)
| // [76543210]
// [________43210987_______]
((((long)in.get(90 + inPos)) << 7) & 32767L)
| // [76543210]
// [21098765_______________]
((((long)in.get(91 + inPos)) << 15) & 8388607L);
}
}
private static final class Packer24 extends BytePackerForLong {
private Packer24() {
super(24);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 0 + inPos] & 16777215L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 0 + inPos] & 16777215L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 0 + inPos] & 16777215L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 1 + inPos] & 16777215L))) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 1 + inPos] & 16777215L) >>> 8)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 1 + inPos] & 16777215L) >>> 16)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 2 + inPos] & 16777215L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 2 + inPos] & 16777215L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 2 + inPos] & 16777215L) >>> 16)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 3 + inPos] & 16777215L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 3 + inPos] & 16777215L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 3 + inPos] & 16777215L) >>> 16)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 4 + inPos] & 16777215L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 4 + inPos] & 16777215L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 4 + inPos] & 16777215L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 5 + inPos] & 16777215L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 5 + inPos] & 16777215L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 5 + inPos] & 16777215L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 6 + inPos] & 16777215L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 6 + inPos] & 16777215L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 6 + inPos] & 16777215L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 7 + inPos] & 16777215L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 7 + inPos] & 16777215L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 7 + inPos] & 16777215L) >>> 16)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 0 + inPos] & 16777215L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 0 + inPos] & 16777215L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 0 + inPos] & 16777215L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 1 + inPos] & 16777215L))) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 1 + inPos] & 16777215L) >>> 8)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 1 + inPos] & 16777215L) >>> 16)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 2 + inPos] & 16777215L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 2 + inPos] & 16777215L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 2 + inPos] & 16777215L) >>> 16)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 3 + inPos] & 16777215L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 3 + inPos] & 16777215L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 3 + inPos] & 16777215L) >>> 16)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 4 + inPos] & 16777215L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 4 + inPos] & 16777215L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 4 + inPos] & 16777215L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 5 + inPos] & 16777215L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 5 + inPos] & 16777215L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 5 + inPos] & 16777215L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 6 + inPos] & 16777215L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 6 + inPos] & 16777215L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 6 + inPos] & 16777215L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 7 + inPos] & 16777215L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 7 + inPos] & 16777215L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 7 + inPos] & 16777215L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 8 + inPos] & 16777215L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 8 + inPos] & 16777215L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 8 + inPos] & 16777215L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[ 9 + inPos] & 16777215L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[ 9 + inPos] & 16777215L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[ 9 + inPos] & 16777215L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[10 + inPos] & 16777215L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[10 + inPos] & 16777215L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[10 + inPos] & 16777215L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[11 + inPos] & 16777215L))) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[11 + inPos] & 16777215L) >>> 8)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[11 + inPos] & 16777215L) >>> 16)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[12 + inPos] & 16777215L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[12 + inPos] & 16777215L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[12 + inPos] & 16777215L) >>> 16)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[13 + inPos] & 16777215L))) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[13 + inPos] & 16777215L) >>> 8)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[13 + inPos] & 16777215L) >>> 16)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[14 + inPos] & 16777215L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[14 + inPos] & 16777215L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[14 + inPos] & 16777215L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[15 + inPos] & 16777215L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[15 + inPos] & 16777215L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[15 + inPos] & 16777215L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[16 + inPos] & 16777215L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[16 + inPos] & 16777215L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[16 + inPos] & 16777215L) >>> 16)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[17 + inPos] & 16777215L))) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[17 + inPos] & 16777215L) >>> 8)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[17 + inPos] & 16777215L) >>> 16)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[18 + inPos] & 16777215L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[18 + inPos] & 16777215L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[18 + inPos] & 16777215L) >>> 16)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[19 + inPos] & 16777215L))) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[19 + inPos] & 16777215L) >>> 8)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[19 + inPos] & 16777215L) >>> 16)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[20 + inPos] & 16777215L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[20 + inPos] & 16777215L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[20 + inPos] & 16777215L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[21 + inPos] & 16777215L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[21 + inPos] & 16777215L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[21 + inPos] & 16777215L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[22 + inPos] & 16777215L))) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[22 + inPos] & 16777215L) >>> 8)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[22 + inPos] & 16777215L) >>> 16)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[23 + inPos] & 16777215L))) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[23 + inPos] & 16777215L) >>> 8)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[23 + inPos] & 16777215L) >>> 16)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[24 + inPos] & 16777215L))) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[24 + inPos] & 16777215L) >>> 8)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[24 + inPos] & 16777215L) >>> 16)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[25 + inPos] & 16777215L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[25 + inPos] & 16777215L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[25 + inPos] & 16777215L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[26 + inPos] & 16777215L))) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[26 + inPos] & 16777215L) >>> 8)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[26 + inPos] & 16777215L) >>> 16)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[27 + inPos] & 16777215L))) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[27 + inPos] & 16777215L) >>> 8)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[27 + inPos] & 16777215L) >>> 16)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[28 + inPos] & 16777215L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[28 + inPos] & 16777215L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[28 + inPos] & 16777215L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[29 + inPos] & 16777215L))) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[29 + inPos] & 16777215L) >>> 8)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[29 + inPos] & 16777215L) >>> 16)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[30 + inPos] & 16777215L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[30 + inPos] & 16777215L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[30 + inPos] & 16777215L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________76543210]
((in[31 + inPos] & 16777215L))) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________54321098________]
((in[31 + inPos] & 16777215L) >>> 8)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [32109876________________]
((in[31 + inPos] & 16777215L) >>> 16)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L);
out[ 1 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 3 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 4 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 5 + inPos]) << 16) & 16777215L);
out[ 2 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 8 + inPos]) << 16) & 16777215L);
out[ 3 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[11 + inPos]) << 16) & 16777215L);
out[ 4 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L);
out[ 5 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L);
out[ 6 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L);
out[ 7 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L);
out[ 1 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 3 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 4 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 5 + inPos)) << 16) & 16777215L);
out[ 2 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 8 + inPos)) << 16) & 16777215L);
out[ 3 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(11 + inPos)) << 16) & 16777215L);
out[ 4 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L);
out[ 5 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L);
out[ 6 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L);
out[ 7 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L);
out[ 1 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 3 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 4 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 5 + inPos]) << 16) & 16777215L);
out[ 2 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[ 8 + inPos]) << 16) & 16777215L);
out[ 3 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[11 + inPos]) << 16) & 16777215L);
out[ 4 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L);
out[ 5 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L);
out[ 6 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L);
out[ 7 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L);
out[ 8 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L);
out[ 9 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L);
out[10 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L);
out[11 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[34 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[35 + inPos]) << 16) & 16777215L);
out[12 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[38 + inPos]) << 16) & 16777215L);
out[13 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[40 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[41 + inPos]) << 16) & 16777215L);
out[14 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L);
out[15 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L);
out[16 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[49 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[50 + inPos]) << 16) & 16777215L);
out[17 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[51 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[52 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[53 + inPos]) << 16) & 16777215L);
out[18 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[56 + inPos]) << 16) & 16777215L);
out[19 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[57 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[58 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[59 + inPos]) << 16) & 16777215L);
out[20 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L);
out[21 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L);
out[22 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[66 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[67 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[68 + inPos]) << 16) & 16777215L);
out[23 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[69 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[70 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[71 + inPos]) << 16) & 16777215L);
out[24 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[72 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[73 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[74 + inPos]) << 16) & 16777215L);
out[25 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L);
out[26 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[78 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[79 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[80 + inPos]) << 16) & 16777215L);
out[27 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[81 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[82 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[83 + inPos]) << 16) & 16777215L);
out[28 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L);
out[29 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[87 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[88 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[89 + inPos]) << 16) & 16777215L);
out[30 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L);
out[31 + outPos] =
// [76543210]
// [________________76543210]
((((long)in[93 + inPos]) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in[94 + inPos]) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in[95 + inPos]) << 16) & 16777215L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L);
out[ 1 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 3 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 4 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 5 + inPos)) << 16) & 16777215L);
out[ 2 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get( 8 + inPos)) << 16) & 16777215L);
out[ 3 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(11 + inPos)) << 16) & 16777215L);
out[ 4 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L);
out[ 5 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L);
out[ 6 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L);
out[ 7 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L);
out[ 8 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L);
out[ 9 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L);
out[10 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L);
out[11 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(34 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(35 + inPos)) << 16) & 16777215L);
out[12 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(38 + inPos)) << 16) & 16777215L);
out[13 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(40 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(41 + inPos)) << 16) & 16777215L);
out[14 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L);
out[15 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L);
out[16 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(50 + inPos)) << 16) & 16777215L);
out[17 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(51 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(52 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(53 + inPos)) << 16) & 16777215L);
out[18 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(56 + inPos)) << 16) & 16777215L);
out[19 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(57 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(58 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(59 + inPos)) << 16) & 16777215L);
out[20 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L);
out[21 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L);
out[22 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(66 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(67 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(68 + inPos)) << 16) & 16777215L);
out[23 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(69 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(70 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(71 + inPos)) << 16) & 16777215L);
out[24 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(72 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(73 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(74 + inPos)) << 16) & 16777215L);
out[25 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L);
out[26 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(78 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(79 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(80 + inPos)) << 16) & 16777215L);
out[27 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(81 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(82 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(83 + inPos)) << 16) & 16777215L);
out[28 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L);
out[29 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(87 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(88 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(89 + inPos)) << 16) & 16777215L);
out[30 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L);
out[31 + outPos] =
// [76543210]
// [________________76543210]
((((long)in.get(93 + inPos)) ) & 255L)
| // [76543210]
// [________54321098________]
((((long)in.get(94 + inPos)) << 8) & 65535L)
| // [76543210]
// [32109876________________]
((((long)in.get(95 + inPos)) << 16) & 16777215L);
}
}
private static final class Packer25 extends BytePackerForLong {
private Packer25() {
super(25);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________76543210]
((in[ 0 + inPos] & 33554431L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________54321098________]
((in[ 0 + inPos] & 33554431L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_32109876________________]
((in[ 0 + inPos] & 33554431L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_______0]
// [4________________________]
((in[ 0 + inPos] & 33554431L) >>> 24)
| // [7654321_]
// [__________________6543210]
((in[ 1 + inPos] & 33554431L) << 1)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________43210987_______]
((in[ 1 + inPos] & 33554431L) >>> 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__21098765_______________]
((in[ 1 + inPos] & 33554431L) >>> 15)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [43_______________________]
((in[ 1 + inPos] & 33554431L) >>> 23)
| // [765432__]
// [___________________543210]
((in[ 2 + inPos] & 33554431L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [___________32109876______]
((in[ 2 + inPos] & 33554431L) >>> 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [___10987654______________]
((in[ 2 + inPos] & 33554431L) >>> 14)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [432______________________]
((in[ 2 + inPos] & 33554431L) >>> 22)
| // [76543___]
// [____________________43210]
((in[ 3 + inPos] & 33554431L) << 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________21098765_____]
((in[ 3 + inPos] & 33554431L) >>> 5)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____09876543_____________]
((in[ 3 + inPos] & 33554431L) >>> 13)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [4321_____________________]
((in[ 3 + inPos] & 33554431L) >>> 21)
| // [7654____]
// [_____________________3210]
((in[ 4 + inPos] & 33554431L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____________10987654____]
((in[ 4 + inPos] & 33554431L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____98765432____________]
((in[ 4 + inPos] & 33554431L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [___43210]
// [43210____________________]
((in[ 4 + inPos] & 33554431L) >>> 20)
| // [765_____]
// [______________________210]
((in[ 5 + inPos] & 33554431L) << 5)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________09876543___]
((in[ 5 + inPos] & 33554431L) >>> 3)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______87654321___________]
((in[ 5 + inPos] & 33554431L) >>> 11)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [432109___________________]
((in[ 5 + inPos] & 33554431L) >>> 19)
| // [76______]
// [_______________________10]
((in[ 6 + inPos] & 33554431L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________98765432__]
((in[ 6 + inPos] & 33554431L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______76543210__________]
((in[ 6 + inPos] & 33554431L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [_6543210]
// [4321098__________________]
((in[ 6 + inPos] & 33554431L) >>> 18)
| // [7_______]
// [________________________0]
((in[ 7 + inPos] & 33554431L) << 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________87654321_]
((in[ 7 + inPos] & 33554431L) >>> 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________65432109_________]
((in[ 7 + inPos] & 33554431L) >>> 9)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [43210987_________________]
((in[ 7 + inPos] & 33554431L) >>> 17)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________76543210]
((in[ 0 + inPos] & 33554431L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________54321098________]
((in[ 0 + inPos] & 33554431L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_32109876________________]
((in[ 0 + inPos] & 33554431L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_______0]
// [4________________________]
((in[ 0 + inPos] & 33554431L) >>> 24)
| // [7654321_]
// [__________________6543210]
((in[ 1 + inPos] & 33554431L) << 1)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________43210987_______]
((in[ 1 + inPos] & 33554431L) >>> 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__21098765_______________]
((in[ 1 + inPos] & 33554431L) >>> 15)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [43_______________________]
((in[ 1 + inPos] & 33554431L) >>> 23)
| // [765432__]
// [___________________543210]
((in[ 2 + inPos] & 33554431L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [___________32109876______]
((in[ 2 + inPos] & 33554431L) >>> 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [___10987654______________]
((in[ 2 + inPos] & 33554431L) >>> 14)) & 255);
out[ 9 + outPos] = (byte)((
// [_____210]
// [432______________________]
((in[ 2 + inPos] & 33554431L) >>> 22)
| // [76543___]
// [____________________43210]
((in[ 3 + inPos] & 33554431L) << 3)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________21098765_____]
((in[ 3 + inPos] & 33554431L) >>> 5)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____09876543_____________]
((in[ 3 + inPos] & 33554431L) >>> 13)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [4321_____________________]
((in[ 3 + inPos] & 33554431L) >>> 21)
| // [7654____]
// [_____________________3210]
((in[ 4 + inPos] & 33554431L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____________10987654____]
((in[ 4 + inPos] & 33554431L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____98765432____________]
((in[ 4 + inPos] & 33554431L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [___43210]
// [43210____________________]
((in[ 4 + inPos] & 33554431L) >>> 20)
| // [765_____]
// [______________________210]
((in[ 5 + inPos] & 33554431L) << 5)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________09876543___]
((in[ 5 + inPos] & 33554431L) >>> 3)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______87654321___________]
((in[ 5 + inPos] & 33554431L) >>> 11)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [432109___________________]
((in[ 5 + inPos] & 33554431L) >>> 19)
| // [76______]
// [_______________________10]
((in[ 6 + inPos] & 33554431L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________98765432__]
((in[ 6 + inPos] & 33554431L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______76543210__________]
((in[ 6 + inPos] & 33554431L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [_6543210]
// [4321098__________________]
((in[ 6 + inPos] & 33554431L) >>> 18)
| // [7_______]
// [________________________0]
((in[ 7 + inPos] & 33554431L) << 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________87654321_]
((in[ 7 + inPos] & 33554431L) >>> 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________65432109_________]
((in[ 7 + inPos] & 33554431L) >>> 9)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [43210987_________________]
((in[ 7 + inPos] & 33554431L) >>> 17)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_________________76543210]
((in[ 8 + inPos] & 33554431L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_________54321098________]
((in[ 8 + inPos] & 33554431L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_32109876________________]
((in[ 8 + inPos] & 33554431L) >>> 16)) & 255);
out[28 + outPos] = (byte)((
// [_______0]
// [4________________________]
((in[ 8 + inPos] & 33554431L) >>> 24)
| // [7654321_]
// [__________________6543210]
((in[ 9 + inPos] & 33554431L) << 1)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________43210987_______]
((in[ 9 + inPos] & 33554431L) >>> 7)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__21098765_______________]
((in[ 9 + inPos] & 33554431L) >>> 15)) & 255);
out[31 + outPos] = (byte)((
// [______10]
// [43_______________________]
((in[ 9 + inPos] & 33554431L) >>> 23)
| // [765432__]
// [___________________543210]
((in[10 + inPos] & 33554431L) << 2)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [___________32109876______]
((in[10 + inPos] & 33554431L) >>> 6)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___10987654______________]
((in[10 + inPos] & 33554431L) >>> 14)) & 255);
out[34 + outPos] = (byte)((
// [_____210]
// [432______________________]
((in[10 + inPos] & 33554431L) >>> 22)
| // [76543___]
// [____________________43210]
((in[11 + inPos] & 33554431L) << 3)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________21098765_____]
((in[11 + inPos] & 33554431L) >>> 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____09876543_____________]
((in[11 + inPos] & 33554431L) >>> 13)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [4321_____________________]
((in[11 + inPos] & 33554431L) >>> 21)
| // [7654____]
// [_____________________3210]
((in[12 + inPos] & 33554431L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_____________10987654____]
((in[12 + inPos] & 33554431L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____98765432____________]
((in[12 + inPos] & 33554431L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [___43210]
// [43210____________________]
((in[12 + inPos] & 33554431L) >>> 20)
| // [765_____]
// [______________________210]
((in[13 + inPos] & 33554431L) << 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________09876543___]
((in[13 + inPos] & 33554431L) >>> 3)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______87654321___________]
((in[13 + inPos] & 33554431L) >>> 11)) & 255);
out[43 + outPos] = (byte)((
// [__543210]
// [432109___________________]
((in[13 + inPos] & 33554431L) >>> 19)
| // [76______]
// [_______________________10]
((in[14 + inPos] & 33554431L) << 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_______________98765432__]
((in[14 + inPos] & 33554431L) >>> 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_______76543210__________]
((in[14 + inPos] & 33554431L) >>> 10)) & 255);
out[46 + outPos] = (byte)((
// [_6543210]
// [4321098__________________]
((in[14 + inPos] & 33554431L) >>> 18)
| // [7_______]
// [________________________0]
((in[15 + inPos] & 33554431L) << 7)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________87654321_]
((in[15 + inPos] & 33554431L) >>> 1)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________65432109_________]
((in[15 + inPos] & 33554431L) >>> 9)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [43210987_________________]
((in[15 + inPos] & 33554431L) >>> 17)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_________________76543210]
((in[16 + inPos] & 33554431L))) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_________54321098________]
((in[16 + inPos] & 33554431L) >>> 8)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_32109876________________]
((in[16 + inPos] & 33554431L) >>> 16)) & 255);
out[53 + outPos] = (byte)((
// [_______0]
// [4________________________]
((in[16 + inPos] & 33554431L) >>> 24)
| // [7654321_]
// [__________________6543210]
((in[17 + inPos] & 33554431L) << 1)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__________43210987_______]
((in[17 + inPos] & 33554431L) >>> 7)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__21098765_______________]
((in[17 + inPos] & 33554431L) >>> 15)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [43_______________________]
((in[17 + inPos] & 33554431L) >>> 23)
| // [765432__]
// [___________________543210]
((in[18 + inPos] & 33554431L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [___________32109876______]
((in[18 + inPos] & 33554431L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [___10987654______________]
((in[18 + inPos] & 33554431L) >>> 14)) & 255);
out[59 + outPos] = (byte)((
// [_____210]
// [432______________________]
((in[18 + inPos] & 33554431L) >>> 22)
| // [76543___]
// [____________________43210]
((in[19 + inPos] & 33554431L) << 3)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____________21098765_____]
((in[19 + inPos] & 33554431L) >>> 5)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____09876543_____________]
((in[19 + inPos] & 33554431L) >>> 13)) & 255);
out[62 + outPos] = (byte)((
// [____3210]
// [4321_____________________]
((in[19 + inPos] & 33554431L) >>> 21)
| // [7654____]
// [_____________________3210]
((in[20 + inPos] & 33554431L) << 4)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____________10987654____]
((in[20 + inPos] & 33554431L) >>> 4)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_____98765432____________]
((in[20 + inPos] & 33554431L) >>> 12)) & 255);
out[65 + outPos] = (byte)((
// [___43210]
// [43210____________________]
((in[20 + inPos] & 33554431L) >>> 20)
| // [765_____]
// [______________________210]
((in[21 + inPos] & 33554431L) << 5)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________09876543___]
((in[21 + inPos] & 33554431L) >>> 3)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______87654321___________]
((in[21 + inPos] & 33554431L) >>> 11)) & 255);
out[68 + outPos] = (byte)((
// [__543210]
// [432109___________________]
((in[21 + inPos] & 33554431L) >>> 19)
| // [76______]
// [_______________________10]
((in[22 + inPos] & 33554431L) << 6)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______________98765432__]
((in[22 + inPos] & 33554431L) >>> 2)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_______76543210__________]
((in[22 + inPos] & 33554431L) >>> 10)) & 255);
out[71 + outPos] = (byte)((
// [_6543210]
// [4321098__________________]
((in[22 + inPos] & 33554431L) >>> 18)
| // [7_______]
// [________________________0]
((in[23 + inPos] & 33554431L) << 7)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________87654321_]
((in[23 + inPos] & 33554431L) >>> 1)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________65432109_________]
((in[23 + inPos] & 33554431L) >>> 9)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [43210987_________________]
((in[23 + inPos] & 33554431L) >>> 17)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_________________76543210]
((in[24 + inPos] & 33554431L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_________54321098________]
((in[24 + inPos] & 33554431L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_32109876________________]
((in[24 + inPos] & 33554431L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [_______0]
// [4________________________]
((in[24 + inPos] & 33554431L) >>> 24)
| // [7654321_]
// [__________________6543210]
((in[25 + inPos] & 33554431L) << 1)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________43210987_______]
((in[25 + inPos] & 33554431L) >>> 7)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__21098765_______________]
((in[25 + inPos] & 33554431L) >>> 15)) & 255);
out[81 + outPos] = (byte)((
// [______10]
// [43_______________________]
((in[25 + inPos] & 33554431L) >>> 23)
| // [765432__]
// [___________________543210]
((in[26 + inPos] & 33554431L) << 2)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [___________32109876______]
((in[26 + inPos] & 33554431L) >>> 6)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [___10987654______________]
((in[26 + inPos] & 33554431L) >>> 14)) & 255);
out[84 + outPos] = (byte)((
// [_____210]
// [432______________________]
((in[26 + inPos] & 33554431L) >>> 22)
| // [76543___]
// [____________________43210]
((in[27 + inPos] & 33554431L) << 3)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________21098765_____]
((in[27 + inPos] & 33554431L) >>> 5)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____09876543_____________]
((in[27 + inPos] & 33554431L) >>> 13)) & 255);
out[87 + outPos] = (byte)((
// [____3210]
// [4321_____________________]
((in[27 + inPos] & 33554431L) >>> 21)
| // [7654____]
// [_____________________3210]
((in[28 + inPos] & 33554431L) << 4)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_____________10987654____]
((in[28 + inPos] & 33554431L) >>> 4)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_____98765432____________]
((in[28 + inPos] & 33554431L) >>> 12)) & 255);
out[90 + outPos] = (byte)((
// [___43210]
// [43210____________________]
((in[28 + inPos] & 33554431L) >>> 20)
| // [765_____]
// [______________________210]
((in[29 + inPos] & 33554431L) << 5)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [______________09876543___]
((in[29 + inPos] & 33554431L) >>> 3)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [______87654321___________]
((in[29 + inPos] & 33554431L) >>> 11)) & 255);
out[93 + outPos] = (byte)((
// [__543210]
// [432109___________________]
((in[29 + inPos] & 33554431L) >>> 19)
| // [76______]
// [_______________________10]
((in[30 + inPos] & 33554431L) << 6)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_______________98765432__]
((in[30 + inPos] & 33554431L) >>> 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_______76543210__________]
((in[30 + inPos] & 33554431L) >>> 10)) & 255);
out[96 + outPos] = (byte)((
// [_6543210]
// [4321098__________________]
((in[30 + inPos] & 33554431L) >>> 18)
| // [7_______]
// [________________________0]
((in[31 + inPos] & 33554431L) << 7)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________87654321_]
((in[31 + inPos] & 33554431L) >>> 1)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________65432109_________]
((in[31 + inPos] & 33554431L) >>> 9)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [43210987_________________]
((in[31 + inPos] & 33554431L) >>> 17)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in[ 3 + inPos]) << 24) & 33554431L);
out[ 1 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in[ 3 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in[ 4 + inPos]) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in[ 5 + inPos]) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in[ 6 + inPos]) << 23) & 33554431L);
out[ 2 + outPos] =
// [765432__]
// [___________________543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in[ 7 + inPos]) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in[ 8 + inPos]) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in[ 9 + inPos]) << 22) & 33554431L);
out[ 3 + outPos] =
// [76543___]
// [____________________43210]
((((long)in[ 9 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in[10 + inPos]) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in[11 + inPos]) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in[12 + inPos]) << 21) & 33554431L);
out[ 4 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in[15 + inPos]) << 20) & 33554431L);
out[ 5 + outPos] =
// [765_____]
// [______________________210]
((((long)in[15 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in[16 + inPos]) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in[17 + inPos]) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in[18 + inPos]) << 19) & 33554431L);
out[ 6 + outPos] =
// [76______]
// [_______________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in[21 + inPos]) << 18) & 33554431L);
out[ 7 + outPos] =
// [7_______]
// [________________________0]
((((long)in[21 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in[22 + inPos]) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in[23 + inPos]) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in[24 + inPos]) << 17) & 33554431L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in.get( 3 + inPos)) << 24) & 33554431L);
out[ 1 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in.get( 3 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in.get( 4 + inPos)) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in.get( 5 + inPos)) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in.get( 6 + inPos)) << 23) & 33554431L);
out[ 2 + outPos] =
// [765432__]
// [___________________543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in.get( 7 + inPos)) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in.get( 8 + inPos)) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in.get( 9 + inPos)) << 22) & 33554431L);
out[ 3 + outPos] =
// [76543___]
// [____________________43210]
((((long)in.get( 9 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in.get(10 + inPos)) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in.get(11 + inPos)) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in.get(12 + inPos)) << 21) & 33554431L);
out[ 4 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in.get(15 + inPos)) << 20) & 33554431L);
out[ 5 + outPos] =
// [765_____]
// [______________________210]
((((long)in.get(15 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in.get(16 + inPos)) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in.get(17 + inPos)) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in.get(18 + inPos)) << 19) & 33554431L);
out[ 6 + outPos] =
// [76______]
// [_______________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in.get(21 + inPos)) << 18) & 33554431L);
out[ 7 + outPos] =
// [7_______]
// [________________________0]
((((long)in.get(21 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in.get(22 + inPos)) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in.get(23 + inPos)) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in.get(24 + inPos)) << 17) & 33554431L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in[ 3 + inPos]) << 24) & 33554431L);
out[ 1 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in[ 3 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in[ 4 + inPos]) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in[ 5 + inPos]) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in[ 6 + inPos]) << 23) & 33554431L);
out[ 2 + outPos] =
// [765432__]
// [___________________543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in[ 7 + inPos]) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in[ 8 + inPos]) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in[ 9 + inPos]) << 22) & 33554431L);
out[ 3 + outPos] =
// [76543___]
// [____________________43210]
((((long)in[ 9 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in[10 + inPos]) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in[11 + inPos]) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in[12 + inPos]) << 21) & 33554431L);
out[ 4 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in[15 + inPos]) << 20) & 33554431L);
out[ 5 + outPos] =
// [765_____]
// [______________________210]
((((long)in[15 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in[16 + inPos]) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in[17 + inPos]) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in[18 + inPos]) << 19) & 33554431L);
out[ 6 + outPos] =
// [76______]
// [_______________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in[21 + inPos]) << 18) & 33554431L);
out[ 7 + outPos] =
// [7_______]
// [________________________0]
((((long)in[21 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in[22 + inPos]) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in[23 + inPos]) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in[24 + inPos]) << 17) & 33554431L);
out[ 8 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in[27 + inPos]) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in[28 + inPos]) << 24) & 33554431L);
out[ 9 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in[28 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in[29 + inPos]) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in[30 + inPos]) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in[31 + inPos]) << 23) & 33554431L);
out[10 + outPos] =
// [765432__]
// [___________________543210]
((((long)in[31 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in[32 + inPos]) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in[33 + inPos]) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in[34 + inPos]) << 22) & 33554431L);
out[11 + outPos] =
// [76543___]
// [____________________43210]
((((long)in[34 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in[35 + inPos]) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in[36 + inPos]) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in[37 + inPos]) << 21) & 33554431L);
out[12 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in[40 + inPos]) << 20) & 33554431L);
out[13 + outPos] =
// [765_____]
// [______________________210]
((((long)in[40 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in[41 + inPos]) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in[42 + inPos]) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in[43 + inPos]) << 19) & 33554431L);
out[14 + outPos] =
// [76______]
// [_______________________10]
((((long)in[43 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in[44 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in[45 + inPos]) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in[46 + inPos]) << 18) & 33554431L);
out[15 + outPos] =
// [7_______]
// [________________________0]
((((long)in[46 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in[47 + inPos]) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in[48 + inPos]) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in[49 + inPos]) << 17) & 33554431L);
out[16 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in[50 + inPos]) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in[51 + inPos]) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in[52 + inPos]) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in[53 + inPos]) << 24) & 33554431L);
out[17 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in[53 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in[54 + inPos]) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in[55 + inPos]) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in[56 + inPos]) << 23) & 33554431L);
out[18 + outPos] =
// [765432__]
// [___________________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in[58 + inPos]) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in[59 + inPos]) << 22) & 33554431L);
out[19 + outPos] =
// [76543___]
// [____________________43210]
((((long)in[59 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in[60 + inPos]) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in[61 + inPos]) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in[62 + inPos]) << 21) & 33554431L);
out[20 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in[62 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in[63 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in[64 + inPos]) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in[65 + inPos]) << 20) & 33554431L);
out[21 + outPos] =
// [765_____]
// [______________________210]
((((long)in[65 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in[66 + inPos]) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in[67 + inPos]) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in[68 + inPos]) << 19) & 33554431L);
out[22 + outPos] =
// [76______]
// [_______________________10]
((((long)in[68 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in[69 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in[70 + inPos]) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in[71 + inPos]) << 18) & 33554431L);
out[23 + outPos] =
// [7_______]
// [________________________0]
((((long)in[71 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in[72 + inPos]) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in[73 + inPos]) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in[74 + inPos]) << 17) & 33554431L);
out[24 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in[78 + inPos]) << 24) & 33554431L);
out[25 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in[78 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in[79 + inPos]) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in[80 + inPos]) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in[81 + inPos]) << 23) & 33554431L);
out[26 + outPos] =
// [765432__]
// [___________________543210]
((((long)in[81 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in[82 + inPos]) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in[83 + inPos]) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in[84 + inPos]) << 22) & 33554431L);
out[27 + outPos] =
// [76543___]
// [____________________43210]
((((long)in[84 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in[85 + inPos]) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in[86 + inPos]) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in[87 + inPos]) << 21) & 33554431L);
out[28 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in[87 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in[88 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in[89 + inPos]) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in[90 + inPos]) << 20) & 33554431L);
out[29 + outPos] =
// [765_____]
// [______________________210]
((((long)in[90 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in[91 + inPos]) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in[92 + inPos]) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in[93 + inPos]) << 19) & 33554431L);
out[30 + outPos] =
// [76______]
// [_______________________10]
((((long)in[93 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in[94 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in[95 + inPos]) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in[96 + inPos]) << 18) & 33554431L);
out[31 + outPos] =
// [7_______]
// [________________________0]
((((long)in[96 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in[97 + inPos]) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in[98 + inPos]) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in[99 + inPos]) << 17) & 33554431L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in.get( 3 + inPos)) << 24) & 33554431L);
out[ 1 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in.get( 3 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in.get( 4 + inPos)) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in.get( 5 + inPos)) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in.get( 6 + inPos)) << 23) & 33554431L);
out[ 2 + outPos] =
// [765432__]
// [___________________543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in.get( 7 + inPos)) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in.get( 8 + inPos)) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in.get( 9 + inPos)) << 22) & 33554431L);
out[ 3 + outPos] =
// [76543___]
// [____________________43210]
((((long)in.get( 9 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in.get(10 + inPos)) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in.get(11 + inPos)) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in.get(12 + inPos)) << 21) & 33554431L);
out[ 4 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in.get(15 + inPos)) << 20) & 33554431L);
out[ 5 + outPos] =
// [765_____]
// [______________________210]
((((long)in.get(15 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in.get(16 + inPos)) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in.get(17 + inPos)) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in.get(18 + inPos)) << 19) & 33554431L);
out[ 6 + outPos] =
// [76______]
// [_______________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in.get(21 + inPos)) << 18) & 33554431L);
out[ 7 + outPos] =
// [7_______]
// [________________________0]
((((long)in.get(21 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in.get(22 + inPos)) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in.get(23 + inPos)) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in.get(24 + inPos)) << 17) & 33554431L);
out[ 8 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in.get(27 + inPos)) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in.get(28 + inPos)) << 24) & 33554431L);
out[ 9 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in.get(28 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in.get(29 + inPos)) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in.get(30 + inPos)) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in.get(31 + inPos)) << 23) & 33554431L);
out[10 + outPos] =
// [765432__]
// [___________________543210]
((((long)in.get(31 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in.get(32 + inPos)) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in.get(33 + inPos)) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in.get(34 + inPos)) << 22) & 33554431L);
out[11 + outPos] =
// [76543___]
// [____________________43210]
((((long)in.get(34 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in.get(35 + inPos)) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in.get(36 + inPos)) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in.get(37 + inPos)) << 21) & 33554431L);
out[12 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in.get(40 + inPos)) << 20) & 33554431L);
out[13 + outPos] =
// [765_____]
// [______________________210]
((((long)in.get(40 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in.get(41 + inPos)) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in.get(42 + inPos)) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in.get(43 + inPos)) << 19) & 33554431L);
out[14 + outPos] =
// [76______]
// [_______________________10]
((((long)in.get(43 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in.get(44 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in.get(45 + inPos)) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in.get(46 + inPos)) << 18) & 33554431L);
out[15 + outPos] =
// [7_______]
// [________________________0]
((((long)in.get(46 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in.get(47 + inPos)) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in.get(48 + inPos)) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in.get(49 + inPos)) << 17) & 33554431L);
out[16 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in.get(50 + inPos)) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in.get(51 + inPos)) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in.get(52 + inPos)) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in.get(53 + inPos)) << 24) & 33554431L);
out[17 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in.get(53 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in.get(54 + inPos)) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in.get(55 + inPos)) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in.get(56 + inPos)) << 23) & 33554431L);
out[18 + outPos] =
// [765432__]
// [___________________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in.get(58 + inPos)) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in.get(59 + inPos)) << 22) & 33554431L);
out[19 + outPos] =
// [76543___]
// [____________________43210]
((((long)in.get(59 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in.get(60 + inPos)) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in.get(61 + inPos)) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in.get(62 + inPos)) << 21) & 33554431L);
out[20 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in.get(62 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in.get(63 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in.get(64 + inPos)) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in.get(65 + inPos)) << 20) & 33554431L);
out[21 + outPos] =
// [765_____]
// [______________________210]
((((long)in.get(65 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in.get(66 + inPos)) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in.get(67 + inPos)) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in.get(68 + inPos)) << 19) & 33554431L);
out[22 + outPos] =
// [76______]
// [_______________________10]
((((long)in.get(68 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in.get(69 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in.get(70 + inPos)) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in.get(71 + inPos)) << 18) & 33554431L);
out[23 + outPos] =
// [7_______]
// [________________________0]
((((long)in.get(71 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in.get(72 + inPos)) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in.get(73 + inPos)) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in.get(74 + inPos)) << 17) & 33554431L);
out[24 + outPos] =
// [76543210]
// [_________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [_________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [_32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L)
| // [_______0]
// [4________________________]
((((long)in.get(78 + inPos)) << 24) & 33554431L);
out[25 + outPos] =
// [7654321_]
// [__________________6543210]
((((long)in.get(78 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________43210987_______]
((((long)in.get(79 + inPos)) << 7) & 32767L)
| // [76543210]
// [__21098765_______________]
((((long)in.get(80 + inPos)) << 15) & 8388607L)
| // [______10]
// [43_______________________]
((((long)in.get(81 + inPos)) << 23) & 33554431L);
out[26 + outPos] =
// [765432__]
// [___________________543210]
((((long)in.get(81 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________32109876______]
((((long)in.get(82 + inPos)) << 6) & 16383L)
| // [76543210]
// [___10987654______________]
((((long)in.get(83 + inPos)) << 14) & 4194303L)
| // [_____210]
// [432______________________]
((((long)in.get(84 + inPos)) << 22) & 33554431L);
out[27 + outPos] =
// [76543___]
// [____________________43210]
((((long)in.get(84 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________21098765_____]
((((long)in.get(85 + inPos)) << 5) & 8191L)
| // [76543210]
// [____09876543_____________]
((((long)in.get(86 + inPos)) << 13) & 2097151L)
| // [____3210]
// [4321_____________________]
((((long)in.get(87 + inPos)) << 21) & 33554431L);
out[28 + outPos] =
// [7654____]
// [_____________________3210]
((((long)in.get(87 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________10987654____]
((((long)in.get(88 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____98765432____________]
((((long)in.get(89 + inPos)) << 12) & 1048575L)
| // [___43210]
// [43210____________________]
((((long)in.get(90 + inPos)) << 20) & 33554431L);
out[29 + outPos] =
// [765_____]
// [______________________210]
((((long)in.get(90 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________09876543___]
((((long)in.get(91 + inPos)) << 3) & 2047L)
| // [76543210]
// [______87654321___________]
((((long)in.get(92 + inPos)) << 11) & 524287L)
| // [__543210]
// [432109___________________]
((((long)in.get(93 + inPos)) << 19) & 33554431L);
out[30 + outPos] =
// [76______]
// [_______________________10]
((((long)in.get(93 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________98765432__]
((((long)in.get(94 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______76543210__________]
((((long)in.get(95 + inPos)) << 10) & 262143L)
| // [_6543210]
// [4321098__________________]
((((long)in.get(96 + inPos)) << 18) & 33554431L);
out[31 + outPos] =
// [7_______]
// [________________________0]
((((long)in.get(96 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________87654321_]
((((long)in.get(97 + inPos)) << 1) & 511L)
| // [76543210]
// [________65432109_________]
((((long)in.get(98 + inPos)) << 9) & 131071L)
| // [76543210]
// [43210987_________________]
((((long)in.get(99 + inPos)) << 17) & 33554431L);
}
}
private static final class Packer26 extends BytePackerForLong {
private Packer26() {
super(26);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[ 0 + inPos] & 67108863L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[ 0 + inPos] & 67108863L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[ 0 + inPos] & 67108863L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[ 0 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[ 1 + inPos] & 67108863L) << 2)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[ 1 + inPos] & 67108863L) >>> 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[ 1 + inPos] & 67108863L) >>> 14)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[ 1 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[ 2 + inPos] & 67108863L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[ 2 + inPos] & 67108863L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[ 2 + inPos] & 67108863L) >>> 12)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[ 2 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[ 3 + inPos] & 67108863L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[ 3 + inPos] & 67108863L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[ 3 + inPos] & 67108863L) >>> 10)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[ 3 + inPos] & 67108863L) >>> 18)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[ 4 + inPos] & 67108863L))) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[ 4 + inPos] & 67108863L) >>> 8)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[ 4 + inPos] & 67108863L) >>> 16)) & 255);
out[16 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[ 4 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[ 5 + inPos] & 67108863L) << 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[ 5 + inPos] & 67108863L) >>> 6)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[ 5 + inPos] & 67108863L) >>> 14)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[ 5 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[ 6 + inPos] & 67108863L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[ 6 + inPos] & 67108863L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[ 6 + inPos] & 67108863L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[ 6 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[ 7 + inPos] & 67108863L) << 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[ 7 + inPos] & 67108863L) >>> 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[ 7 + inPos] & 67108863L) >>> 10)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[ 7 + inPos] & 67108863L) >>> 18)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[ 0 + inPos] & 67108863L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[ 0 + inPos] & 67108863L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[ 0 + inPos] & 67108863L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[ 0 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[ 1 + inPos] & 67108863L) << 2)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[ 1 + inPos] & 67108863L) >>> 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[ 1 + inPos] & 67108863L) >>> 14)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[ 1 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[ 2 + inPos] & 67108863L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[ 2 + inPos] & 67108863L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[ 2 + inPos] & 67108863L) >>> 12)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[ 2 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[ 3 + inPos] & 67108863L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[ 3 + inPos] & 67108863L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[ 3 + inPos] & 67108863L) >>> 10)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[ 3 + inPos] & 67108863L) >>> 18)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[ 4 + inPos] & 67108863L))) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[ 4 + inPos] & 67108863L) >>> 8)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[ 4 + inPos] & 67108863L) >>> 16)) & 255);
out[16 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[ 4 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[ 5 + inPos] & 67108863L) << 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[ 5 + inPos] & 67108863L) >>> 6)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[ 5 + inPos] & 67108863L) >>> 14)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[ 5 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[ 6 + inPos] & 67108863L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[ 6 + inPos] & 67108863L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[ 6 + inPos] & 67108863L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[ 6 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[ 7 + inPos] & 67108863L) << 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[ 7 + inPos] & 67108863L) >>> 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[ 7 + inPos] & 67108863L) >>> 10)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[ 7 + inPos] & 67108863L) >>> 18)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[ 8 + inPos] & 67108863L))) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[ 8 + inPos] & 67108863L) >>> 8)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[ 8 + inPos] & 67108863L) >>> 16)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[ 8 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[ 9 + inPos] & 67108863L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[ 9 + inPos] & 67108863L) >>> 6)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[ 9 + inPos] & 67108863L) >>> 14)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[ 9 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[10 + inPos] & 67108863L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[10 + inPos] & 67108863L) >>> 4)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[10 + inPos] & 67108863L) >>> 12)) & 255);
out[35 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[10 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[11 + inPos] & 67108863L) << 6)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[11 + inPos] & 67108863L) >>> 2)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[11 + inPos] & 67108863L) >>> 10)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[11 + inPos] & 67108863L) >>> 18)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[12 + inPos] & 67108863L))) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[12 + inPos] & 67108863L) >>> 8)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[12 + inPos] & 67108863L) >>> 16)) & 255);
out[42 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[12 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[13 + inPos] & 67108863L) << 2)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[13 + inPos] & 67108863L) >>> 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[13 + inPos] & 67108863L) >>> 14)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[13 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[14 + inPos] & 67108863L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[14 + inPos] & 67108863L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[14 + inPos] & 67108863L) >>> 12)) & 255);
out[48 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[14 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[15 + inPos] & 67108863L) << 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[15 + inPos] & 67108863L) >>> 2)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[15 + inPos] & 67108863L) >>> 10)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[15 + inPos] & 67108863L) >>> 18)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[16 + inPos] & 67108863L))) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[16 + inPos] & 67108863L) >>> 8)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[16 + inPos] & 67108863L) >>> 16)) & 255);
out[55 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[16 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[17 + inPos] & 67108863L) << 2)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[17 + inPos] & 67108863L) >>> 6)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[17 + inPos] & 67108863L) >>> 14)) & 255);
out[58 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[17 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[18 + inPos] & 67108863L) << 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[18 + inPos] & 67108863L) >>> 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[18 + inPos] & 67108863L) >>> 12)) & 255);
out[61 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[18 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[19 + inPos] & 67108863L) << 6)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[19 + inPos] & 67108863L) >>> 2)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[19 + inPos] & 67108863L) >>> 10)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[19 + inPos] & 67108863L) >>> 18)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[20 + inPos] & 67108863L))) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[20 + inPos] & 67108863L) >>> 8)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[20 + inPos] & 67108863L) >>> 16)) & 255);
out[68 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[20 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[21 + inPos] & 67108863L) << 2)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[21 + inPos] & 67108863L) >>> 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[21 + inPos] & 67108863L) >>> 14)) & 255);
out[71 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[21 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[22 + inPos] & 67108863L) << 4)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[22 + inPos] & 67108863L) >>> 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[22 + inPos] & 67108863L) >>> 12)) & 255);
out[74 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[22 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[23 + inPos] & 67108863L) << 6)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[23 + inPos] & 67108863L) >>> 2)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[23 + inPos] & 67108863L) >>> 10)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[23 + inPos] & 67108863L) >>> 18)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[24 + inPos] & 67108863L))) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[24 + inPos] & 67108863L) >>> 8)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[24 + inPos] & 67108863L) >>> 16)) & 255);
out[81 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[24 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[25 + inPos] & 67108863L) << 2)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[25 + inPos] & 67108863L) >>> 6)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[25 + inPos] & 67108863L) >>> 14)) & 255);
out[84 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[25 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[26 + inPos] & 67108863L) << 4)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[26 + inPos] & 67108863L) >>> 4)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[26 + inPos] & 67108863L) >>> 12)) & 255);
out[87 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[26 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[27 + inPos] & 67108863L) << 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[27 + inPos] & 67108863L) >>> 2)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[27 + inPos] & 67108863L) >>> 10)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[27 + inPos] & 67108863L) >>> 18)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [__________________76543210]
((in[28 + inPos] & 67108863L))) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [__________54321098________]
((in[28 + inPos] & 67108863L) >>> 8)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [__32109876________________]
((in[28 + inPos] & 67108863L) >>> 16)) & 255);
out[94 + outPos] = (byte)((
// [______10]
// [54________________________]
((in[28 + inPos] & 67108863L) >>> 24)
| // [765432__]
// [____________________543210]
((in[29 + inPos] & 67108863L) << 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________32109876______]
((in[29 + inPos] & 67108863L) >>> 6)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____10987654______________]
((in[29 + inPos] & 67108863L) >>> 14)) & 255);
out[97 + outPos] = (byte)((
// [____3210]
// [5432______________________]
((in[29 + inPos] & 67108863L) >>> 22)
| // [7654____]
// [______________________3210]
((in[30 + inPos] & 67108863L) << 4)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______________10987654____]
((in[30 + inPos] & 67108863L) >>> 4)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [______98765432____________]
((in[30 + inPos] & 67108863L) >>> 12)) & 255);
out[100 + outPos] = (byte)((
// [__543210]
// [543210____________________]
((in[30 + inPos] & 67108863L) >>> 20)
| // [76______]
// [________________________10]
((in[31 + inPos] & 67108863L) << 6)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________98765432__]
((in[31 + inPos] & 67108863L) >>> 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________76543210__________]
((in[31 + inPos] & 67108863L) >>> 10)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [54321098__________________]
((in[31 + inPos] & 67108863L) >>> 18)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[ 3 + inPos]) << 24) & 67108863L);
out[ 1 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[ 3 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[ 4 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[ 5 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[ 6 + inPos]) << 22) & 67108863L);
out[ 2 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[ 8 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[ 9 + inPos]) << 20) & 67108863L);
out[ 3 + outPos] =
// [76______]
// [________________________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[11 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[12 + inPos]) << 18) & 67108863L);
out[ 4 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[13 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[14 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[15 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[16 + inPos]) << 24) & 67108863L);
out[ 5 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[16 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[17 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[18 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[19 + inPos]) << 22) & 67108863L);
out[ 6 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[22 + inPos]) << 20) & 67108863L);
out[ 7 + outPos] =
// [76______]
// [________________________10]
((((long)in[22 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[23 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[24 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[25 + inPos]) << 18) & 67108863L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get( 3 + inPos)) << 24) & 67108863L);
out[ 1 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get( 3 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get( 4 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get( 5 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get( 6 + inPos)) << 22) & 67108863L);
out[ 2 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get( 8 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get( 9 + inPos)) << 20) & 67108863L);
out[ 3 + outPos] =
// [76______]
// [________________________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(11 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(12 + inPos)) << 18) & 67108863L);
out[ 4 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(13 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(14 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(15 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(16 + inPos)) << 24) & 67108863L);
out[ 5 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(16 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(17 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(18 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(19 + inPos)) << 22) & 67108863L);
out[ 6 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(22 + inPos)) << 20) & 67108863L);
out[ 7 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(22 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(23 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(24 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(25 + inPos)) << 18) & 67108863L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[ 3 + inPos]) << 24) & 67108863L);
out[ 1 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[ 3 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[ 4 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[ 5 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[ 6 + inPos]) << 22) & 67108863L);
out[ 2 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[ 8 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[ 9 + inPos]) << 20) & 67108863L);
out[ 3 + outPos] =
// [76______]
// [________________________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[11 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[12 + inPos]) << 18) & 67108863L);
out[ 4 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[13 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[14 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[15 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[16 + inPos]) << 24) & 67108863L);
out[ 5 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[16 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[17 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[18 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[19 + inPos]) << 22) & 67108863L);
out[ 6 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[22 + inPos]) << 20) & 67108863L);
out[ 7 + outPos] =
// [76______]
// [________________________10]
((((long)in[22 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[23 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[24 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[25 + inPos]) << 18) & 67108863L);
out[ 8 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[26 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[27 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[28 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[29 + inPos]) << 24) & 67108863L);
out[ 9 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[30 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[31 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[32 + inPos]) << 22) & 67108863L);
out[10 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[33 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[34 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[35 + inPos]) << 20) & 67108863L);
out[11 + outPos] =
// [76______]
// [________________________10]
((((long)in[35 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[36 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[37 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[38 + inPos]) << 18) & 67108863L);
out[12 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[40 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[41 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[42 + inPos]) << 24) & 67108863L);
out[13 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[42 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[43 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[44 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[45 + inPos]) << 22) & 67108863L);
out[14 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[47 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[48 + inPos]) << 20) & 67108863L);
out[15 + outPos] =
// [76______]
// [________________________10]
((((long)in[48 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[49 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[50 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[51 + inPos]) << 18) & 67108863L);
out[16 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[52 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[53 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[54 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[55 + inPos]) << 24) & 67108863L);
out[17 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[55 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[56 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[57 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[58 + inPos]) << 22) & 67108863L);
out[18 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[58 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[59 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[60 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[61 + inPos]) << 20) & 67108863L);
out[19 + outPos] =
// [76______]
// [________________________10]
((((long)in[61 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[62 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[63 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[64 + inPos]) << 18) & 67108863L);
out[20 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[65 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[66 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[67 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[68 + inPos]) << 24) & 67108863L);
out[21 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[68 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[69 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[70 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[71 + inPos]) << 22) & 67108863L);
out[22 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[71 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[72 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[73 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[74 + inPos]) << 20) & 67108863L);
out[23 + outPos] =
// [76______]
// [________________________10]
((((long)in[74 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[75 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[76 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[77 + inPos]) << 18) & 67108863L);
out[24 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[78 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[79 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[80 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[81 + inPos]) << 24) & 67108863L);
out[25 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[81 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[82 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[83 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[84 + inPos]) << 22) & 67108863L);
out[26 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[84 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[85 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[86 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[87 + inPos]) << 20) & 67108863L);
out[27 + outPos] =
// [76______]
// [________________________10]
((((long)in[87 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[88 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[89 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[90 + inPos]) << 18) & 67108863L);
out[28 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in[91 + inPos]) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in[92 + inPos]) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in[93 + inPos]) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in[94 + inPos]) << 24) & 67108863L);
out[29 + outPos] =
// [765432__]
// [____________________543210]
((((long)in[94 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in[95 + inPos]) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in[96 + inPos]) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in[97 + inPos]) << 22) & 67108863L);
out[30 + outPos] =
// [7654____]
// [______________________3210]
((((long)in[97 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in[98 + inPos]) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in[99 + inPos]) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in[100 + inPos]) << 20) & 67108863L);
out[31 + outPos] =
// [76______]
// [________________________10]
((((long)in[100 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in[101 + inPos]) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in[102 + inPos]) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in[103 + inPos]) << 18) & 67108863L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get( 3 + inPos)) << 24) & 67108863L);
out[ 1 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get( 3 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get( 4 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get( 5 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get( 6 + inPos)) << 22) & 67108863L);
out[ 2 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get( 8 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get( 9 + inPos)) << 20) & 67108863L);
out[ 3 + outPos] =
// [76______]
// [________________________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(11 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(12 + inPos)) << 18) & 67108863L);
out[ 4 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(13 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(14 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(15 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(16 + inPos)) << 24) & 67108863L);
out[ 5 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(16 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(17 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(18 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(19 + inPos)) << 22) & 67108863L);
out[ 6 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(22 + inPos)) << 20) & 67108863L);
out[ 7 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(22 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(23 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(24 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(25 + inPos)) << 18) & 67108863L);
out[ 8 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(26 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(27 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(28 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(29 + inPos)) << 24) & 67108863L);
out[ 9 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(30 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(31 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(32 + inPos)) << 22) & 67108863L);
out[10 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(33 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(34 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(35 + inPos)) << 20) & 67108863L);
out[11 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(35 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(36 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(37 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(38 + inPos)) << 18) & 67108863L);
out[12 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(40 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(41 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(42 + inPos)) << 24) & 67108863L);
out[13 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(42 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(43 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(44 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(45 + inPos)) << 22) & 67108863L);
out[14 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(47 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(48 + inPos)) << 20) & 67108863L);
out[15 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(48 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(49 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(50 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(51 + inPos)) << 18) & 67108863L);
out[16 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(52 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(53 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(54 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(55 + inPos)) << 24) & 67108863L);
out[17 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(55 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(56 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(57 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(58 + inPos)) << 22) & 67108863L);
out[18 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(58 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(59 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(60 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(61 + inPos)) << 20) & 67108863L);
out[19 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(61 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(62 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(63 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(64 + inPos)) << 18) & 67108863L);
out[20 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(65 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(66 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(67 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(68 + inPos)) << 24) & 67108863L);
out[21 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(68 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(69 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(70 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(71 + inPos)) << 22) & 67108863L);
out[22 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(71 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(72 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(73 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(74 + inPos)) << 20) & 67108863L);
out[23 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(74 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(75 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(76 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(77 + inPos)) << 18) & 67108863L);
out[24 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(78 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(79 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(80 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(81 + inPos)) << 24) & 67108863L);
out[25 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(81 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(82 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(83 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(84 + inPos)) << 22) & 67108863L);
out[26 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(84 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(85 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(86 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(87 + inPos)) << 20) & 67108863L);
out[27 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(87 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(88 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(89 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(90 + inPos)) << 18) & 67108863L);
out[28 + outPos] =
// [76543210]
// [__________________76543210]
((((long)in.get(91 + inPos)) ) & 255L)
| // [76543210]
// [__________54321098________]
((((long)in.get(92 + inPos)) << 8) & 65535L)
| // [76543210]
// [__32109876________________]
((((long)in.get(93 + inPos)) << 16) & 16777215L)
| // [______10]
// [54________________________]
((((long)in.get(94 + inPos)) << 24) & 67108863L);
out[29 + outPos] =
// [765432__]
// [____________________543210]
((((long)in.get(94 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________32109876______]
((((long)in.get(95 + inPos)) << 6) & 16383L)
| // [76543210]
// [____10987654______________]
((((long)in.get(96 + inPos)) << 14) & 4194303L)
| // [____3210]
// [5432______________________]
((((long)in.get(97 + inPos)) << 22) & 67108863L);
out[30 + outPos] =
// [7654____]
// [______________________3210]
((((long)in.get(97 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________10987654____]
((((long)in.get(98 + inPos)) << 4) & 4095L)
| // [76543210]
// [______98765432____________]
((((long)in.get(99 + inPos)) << 12) & 1048575L)
| // [__543210]
// [543210____________________]
((((long)in.get(100 + inPos)) << 20) & 67108863L);
out[31 + outPos] =
// [76______]
// [________________________10]
((((long)in.get(100 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________98765432__]
((((long)in.get(101 + inPos)) << 2) & 1023L)
| // [76543210]
// [________76543210__________]
((((long)in.get(102 + inPos)) << 10) & 262143L)
| // [76543210]
// [54321098__________________]
((((long)in.get(103 + inPos)) << 18) & 67108863L);
}
}
private static final class Packer27 extends BytePackerForLong {
private Packer27() {
super(27);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________76543210]
((in[ 0 + inPos] & 134217727L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________54321098________]
((in[ 0 + inPos] & 134217727L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___32109876________________]
((in[ 0 + inPos] & 134217727L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_____210]
// [654________________________]
((in[ 0 + inPos] & 134217727L) >>> 24)
| // [76543___]
// [______________________43210]
((in[ 1 + inPos] & 134217727L) << 3)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________21098765_____]
((in[ 1 + inPos] & 134217727L) >>> 5)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______09876543_____________]
((in[ 1 + inPos] & 134217727L) >>> 13)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [654321_____________________]
((in[ 1 + inPos] & 134217727L) >>> 21)
| // [76______]
// [_________________________10]
((in[ 2 + inPos] & 134217727L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_________________98765432__]
((in[ 2 + inPos] & 134217727L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_________76543210__________]
((in[ 2 + inPos] & 134217727L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_54321098__________________]
((in[ 2 + inPos] & 134217727L) >>> 18)) & 255);
out[10 + outPos] = (byte)((
// [_______0]
// [6__________________________]
((in[ 2 + inPos] & 134217727L) >>> 26)
| // [7654321_]
// [____________________6543210]
((in[ 3 + inPos] & 134217727L) << 1)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________43210987_______]
((in[ 3 + inPos] & 134217727L) >>> 7)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____21098765_______________]
((in[ 3 + inPos] & 134217727L) >>> 15)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [6543_______________________]
((in[ 3 + inPos] & 134217727L) >>> 23)
| // [7654____]
// [_______________________3210]
((in[ 4 + inPos] & 134217727L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________10987654____]
((in[ 4 + inPos] & 134217727L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______98765432____________]
((in[ 4 + inPos] & 134217727L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [6543210____________________]
((in[ 4 + inPos] & 134217727L) >>> 20)
| // [7_______]
// [__________________________0]
((in[ 5 + inPos] & 134217727L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________87654321_]
((in[ 5 + inPos] & 134217727L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________65432109_________]
((in[ 5 + inPos] & 134217727L) >>> 9)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__43210987_________________]
((in[ 5 + inPos] & 134217727L) >>> 17)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [65_________________________]
((in[ 5 + inPos] & 134217727L) >>> 25)
| // [765432__]
// [_____________________543210]
((in[ 6 + inPos] & 134217727L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________32109876______]
((in[ 6 + inPos] & 134217727L) >>> 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____10987654______________]
((in[ 6 + inPos] & 134217727L) >>> 14)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [65432______________________]
((in[ 6 + inPos] & 134217727L) >>> 22)
| // [765_____]
// [________________________210]
((in[ 7 + inPos] & 134217727L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________09876543___]
((in[ 7 + inPos] & 134217727L) >>> 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________87654321___________]
((in[ 7 + inPos] & 134217727L) >>> 11)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [65432109___________________]
((in[ 7 + inPos] & 134217727L) >>> 19)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________76543210]
((in[ 0 + inPos] & 134217727L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________54321098________]
((in[ 0 + inPos] & 134217727L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___32109876________________]
((in[ 0 + inPos] & 134217727L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_____210]
// [654________________________]
((in[ 0 + inPos] & 134217727L) >>> 24)
| // [76543___]
// [______________________43210]
((in[ 1 + inPos] & 134217727L) << 3)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________21098765_____]
((in[ 1 + inPos] & 134217727L) >>> 5)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______09876543_____________]
((in[ 1 + inPos] & 134217727L) >>> 13)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [654321_____________________]
((in[ 1 + inPos] & 134217727L) >>> 21)
| // [76______]
// [_________________________10]
((in[ 2 + inPos] & 134217727L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [_________________98765432__]
((in[ 2 + inPos] & 134217727L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_________76543210__________]
((in[ 2 + inPos] & 134217727L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_54321098__________________]
((in[ 2 + inPos] & 134217727L) >>> 18)) & 255);
out[10 + outPos] = (byte)((
// [_______0]
// [6__________________________]
((in[ 2 + inPos] & 134217727L) >>> 26)
| // [7654321_]
// [____________________6543210]
((in[ 3 + inPos] & 134217727L) << 1)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________43210987_______]
((in[ 3 + inPos] & 134217727L) >>> 7)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____21098765_______________]
((in[ 3 + inPos] & 134217727L) >>> 15)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [6543_______________________]
((in[ 3 + inPos] & 134217727L) >>> 23)
| // [7654____]
// [_______________________3210]
((in[ 4 + inPos] & 134217727L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________10987654____]
((in[ 4 + inPos] & 134217727L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______98765432____________]
((in[ 4 + inPos] & 134217727L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [6543210____________________]
((in[ 4 + inPos] & 134217727L) >>> 20)
| // [7_______]
// [__________________________0]
((in[ 5 + inPos] & 134217727L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________87654321_]
((in[ 5 + inPos] & 134217727L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________65432109_________]
((in[ 5 + inPos] & 134217727L) >>> 9)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__43210987_________________]
((in[ 5 + inPos] & 134217727L) >>> 17)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [65_________________________]
((in[ 5 + inPos] & 134217727L) >>> 25)
| // [765432__]
// [_____________________543210]
((in[ 6 + inPos] & 134217727L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________32109876______]
((in[ 6 + inPos] & 134217727L) >>> 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____10987654______________]
((in[ 6 + inPos] & 134217727L) >>> 14)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [65432______________________]
((in[ 6 + inPos] & 134217727L) >>> 22)
| // [765_____]
// [________________________210]
((in[ 7 + inPos] & 134217727L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________09876543___]
((in[ 7 + inPos] & 134217727L) >>> 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________87654321___________]
((in[ 7 + inPos] & 134217727L) >>> 11)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [65432109___________________]
((in[ 7 + inPos] & 134217727L) >>> 19)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [___________________76543210]
((in[ 8 + inPos] & 134217727L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___________54321098________]
((in[ 8 + inPos] & 134217727L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [___32109876________________]
((in[ 8 + inPos] & 134217727L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [_____210]
// [654________________________]
((in[ 8 + inPos] & 134217727L) >>> 24)
| // [76543___]
// [______________________43210]
((in[ 9 + inPos] & 134217727L) << 3)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________21098765_____]
((in[ 9 + inPos] & 134217727L) >>> 5)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______09876543_____________]
((in[ 9 + inPos] & 134217727L) >>> 13)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [654321_____________________]
((in[ 9 + inPos] & 134217727L) >>> 21)
| // [76______]
// [_________________________10]
((in[10 + inPos] & 134217727L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_________________98765432__]
((in[10 + inPos] & 134217727L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_________76543210__________]
((in[10 + inPos] & 134217727L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_54321098__________________]
((in[10 + inPos] & 134217727L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [_______0]
// [6__________________________]
((in[10 + inPos] & 134217727L) >>> 26)
| // [7654321_]
// [____________________6543210]
((in[11 + inPos] & 134217727L) << 1)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________43210987_______]
((in[11 + inPos] & 134217727L) >>> 7)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____21098765_______________]
((in[11 + inPos] & 134217727L) >>> 15)) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [6543_______________________]
((in[11 + inPos] & 134217727L) >>> 23)
| // [7654____]
// [_______________________3210]
((in[12 + inPos] & 134217727L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_______________10987654____]
((in[12 + inPos] & 134217727L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_______98765432____________]
((in[12 + inPos] & 134217727L) >>> 12)) & 255);
out[43 + outPos] = (byte)((
// [_6543210]
// [6543210____________________]
((in[12 + inPos] & 134217727L) >>> 20)
| // [7_______]
// [__________________________0]
((in[13 + inPos] & 134217727L) << 7)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________87654321_]
((in[13 + inPos] & 134217727L) >>> 1)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________65432109_________]
((in[13 + inPos] & 134217727L) >>> 9)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__43210987_________________]
((in[13 + inPos] & 134217727L) >>> 17)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [65_________________________]
((in[13 + inPos] & 134217727L) >>> 25)
| // [765432__]
// [_____________________543210]
((in[14 + inPos] & 134217727L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_____________32109876______]
((in[14 + inPos] & 134217727L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____10987654______________]
((in[14 + inPos] & 134217727L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [___43210]
// [65432______________________]
((in[14 + inPos] & 134217727L) >>> 22)
| // [765_____]
// [________________________210]
((in[15 + inPos] & 134217727L) << 5)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________09876543___]
((in[15 + inPos] & 134217727L) >>> 3)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________87654321___________]
((in[15 + inPos] & 134217727L) >>> 11)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [65432109___________________]
((in[15 + inPos] & 134217727L) >>> 19)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [___________________76543210]
((in[16 + inPos] & 134217727L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [___________54321098________]
((in[16 + inPos] & 134217727L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [___32109876________________]
((in[16 + inPos] & 134217727L) >>> 16)) & 255);
out[57 + outPos] = (byte)((
// [_____210]
// [654________________________]
((in[16 + inPos] & 134217727L) >>> 24)
| // [76543___]
// [______________________43210]
((in[17 + inPos] & 134217727L) << 3)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [______________21098765_____]
((in[17 + inPos] & 134217727L) >>> 5)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______09876543_____________]
((in[17 + inPos] & 134217727L) >>> 13)) & 255);
out[60 + outPos] = (byte)((
// [__543210]
// [654321_____________________]
((in[17 + inPos] & 134217727L) >>> 21)
| // [76______]
// [_________________________10]
((in[18 + inPos] & 134217727L) << 6)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [_________________98765432__]
((in[18 + inPos] & 134217727L) >>> 2)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_________76543210__________]
((in[18 + inPos] & 134217727L) >>> 10)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_54321098__________________]
((in[18 + inPos] & 134217727L) >>> 18)) & 255);
out[64 + outPos] = (byte)((
// [_______0]
// [6__________________________]
((in[18 + inPos] & 134217727L) >>> 26)
| // [7654321_]
// [____________________6543210]
((in[19 + inPos] & 134217727L) << 1)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________43210987_______]
((in[19 + inPos] & 134217727L) >>> 7)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____21098765_______________]
((in[19 + inPos] & 134217727L) >>> 15)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [6543_______________________]
((in[19 + inPos] & 134217727L) >>> 23)
| // [7654____]
// [_______________________3210]
((in[20 + inPos] & 134217727L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_______________10987654____]
((in[20 + inPos] & 134217727L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______98765432____________]
((in[20 + inPos] & 134217727L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [_6543210]
// [6543210____________________]
((in[20 + inPos] & 134217727L) >>> 20)
| // [7_______]
// [__________________________0]
((in[21 + inPos] & 134217727L) << 7)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__________________87654321_]
((in[21 + inPos] & 134217727L) >>> 1)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________65432109_________]
((in[21 + inPos] & 134217727L) >>> 9)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__43210987_________________]
((in[21 + inPos] & 134217727L) >>> 17)) & 255);
out[74 + outPos] = (byte)((
// [______10]
// [65_________________________]
((in[21 + inPos] & 134217727L) >>> 25)
| // [765432__]
// [_____________________543210]
((in[22 + inPos] & 134217727L) << 2)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_____________32109876______]
((in[22 + inPos] & 134217727L) >>> 6)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_____10987654______________]
((in[22 + inPos] & 134217727L) >>> 14)) & 255);
out[77 + outPos] = (byte)((
// [___43210]
// [65432______________________]
((in[22 + inPos] & 134217727L) >>> 22)
| // [765_____]
// [________________________210]
((in[23 + inPos] & 134217727L) << 5)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________09876543___]
((in[23 + inPos] & 134217727L) >>> 3)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________87654321___________]
((in[23 + inPos] & 134217727L) >>> 11)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [65432109___________________]
((in[23 + inPos] & 134217727L) >>> 19)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [___________________76543210]
((in[24 + inPos] & 134217727L))) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [___________54321098________]
((in[24 + inPos] & 134217727L) >>> 8)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [___32109876________________]
((in[24 + inPos] & 134217727L) >>> 16)) & 255);
out[84 + outPos] = (byte)((
// [_____210]
// [654________________________]
((in[24 + inPos] & 134217727L) >>> 24)
| // [76543___]
// [______________________43210]
((in[25 + inPos] & 134217727L) << 3)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [______________21098765_____]
((in[25 + inPos] & 134217727L) >>> 5)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [______09876543_____________]
((in[25 + inPos] & 134217727L) >>> 13)) & 255);
out[87 + outPos] = (byte)((
// [__543210]
// [654321_____________________]
((in[25 + inPos] & 134217727L) >>> 21)
| // [76______]
// [_________________________10]
((in[26 + inPos] & 134217727L) << 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_________________98765432__]
((in[26 + inPos] & 134217727L) >>> 2)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_________76543210__________]
((in[26 + inPos] & 134217727L) >>> 10)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_54321098__________________]
((in[26 + inPos] & 134217727L) >>> 18)) & 255);
out[91 + outPos] = (byte)((
// [_______0]
// [6__________________________]
((in[26 + inPos] & 134217727L) >>> 26)
| // [7654321_]
// [____________________6543210]
((in[27 + inPos] & 134217727L) << 1)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________43210987_______]
((in[27 + inPos] & 134217727L) >>> 7)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____21098765_______________]
((in[27 + inPos] & 134217727L) >>> 15)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [6543_______________________]
((in[27 + inPos] & 134217727L) >>> 23)
| // [7654____]
// [_______________________3210]
((in[28 + inPos] & 134217727L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_______________10987654____]
((in[28 + inPos] & 134217727L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [_______98765432____________]
((in[28 + inPos] & 134217727L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [_6543210]
// [6543210____________________]
((in[28 + inPos] & 134217727L) >>> 20)
| // [7_______]
// [__________________________0]
((in[29 + inPos] & 134217727L) << 7)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [__________________87654321_]
((in[29 + inPos] & 134217727L) >>> 1)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [__________65432109_________]
((in[29 + inPos] & 134217727L) >>> 9)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__43210987_________________]
((in[29 + inPos] & 134217727L) >>> 17)) & 255);
out[101 + outPos] = (byte)((
// [______10]
// [65_________________________]
((in[29 + inPos] & 134217727L) >>> 25)
| // [765432__]
// [_____________________543210]
((in[30 + inPos] & 134217727L) << 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_____________32109876______]
((in[30 + inPos] & 134217727L) >>> 6)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_____10987654______________]
((in[30 + inPos] & 134217727L) >>> 14)) & 255);
out[104 + outPos] = (byte)((
// [___43210]
// [65432______________________]
((in[30 + inPos] & 134217727L) >>> 22)
| // [765_____]
// [________________________210]
((in[31 + inPos] & 134217727L) << 5)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________09876543___]
((in[31 + inPos] & 134217727L) >>> 3)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________87654321___________]
((in[31 + inPos] & 134217727L) >>> 11)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [65432109___________________]
((in[31 + inPos] & 134217727L) >>> 19)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in[ 3 + inPos]) << 24) & 134217727L);
out[ 1 + outPos] =
// [76543___]
// [______________________43210]
((((long)in[ 3 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in[ 4 + inPos]) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in[ 5 + inPos]) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in[ 6 + inPos]) << 21) & 134217727L);
out[ 2 + outPos] =
// [76______]
// [_________________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in[ 9 + inPos]) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in[10 + inPos]) << 26) & 134217727L);
out[ 3 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in[10 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in[11 + inPos]) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in[12 + inPos]) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in[13 + inPos]) << 23) & 134217727L);
out[ 4 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in[16 + inPos]) << 20) & 134217727L);
out[ 5 + outPos] =
// [7_______]
// [__________________________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in[17 + inPos]) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in[18 + inPos]) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in[19 + inPos]) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in[20 + inPos]) << 25) & 134217727L);
out[ 6 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in[21 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in[22 + inPos]) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in[23 + inPos]) << 22) & 134217727L);
out[ 7 + outPos] =
// [765_____]
// [________________________210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in[24 + inPos]) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in[25 + inPos]) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in[26 + inPos]) << 19) & 134217727L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in.get( 3 + inPos)) << 24) & 134217727L);
out[ 1 + outPos] =
// [76543___]
// [______________________43210]
((((long)in.get( 3 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in.get( 4 + inPos)) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in.get( 5 + inPos)) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in.get( 6 + inPos)) << 21) & 134217727L);
out[ 2 + outPos] =
// [76______]
// [_________________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in.get( 9 + inPos)) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in.get(10 + inPos)) << 26) & 134217727L);
out[ 3 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in.get(10 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in.get(11 + inPos)) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in.get(12 + inPos)) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in.get(13 + inPos)) << 23) & 134217727L);
out[ 4 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in.get(16 + inPos)) << 20) & 134217727L);
out[ 5 + outPos] =
// [7_______]
// [__________________________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in.get(18 + inPos)) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in.get(19 + inPos)) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in.get(20 + inPos)) << 25) & 134217727L);
out[ 6 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in.get(21 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in.get(22 + inPos)) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in.get(23 + inPos)) << 22) & 134217727L);
out[ 7 + outPos] =
// [765_____]
// [________________________210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in.get(24 + inPos)) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in.get(25 + inPos)) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in.get(26 + inPos)) << 19) & 134217727L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in[ 3 + inPos]) << 24) & 134217727L);
out[ 1 + outPos] =
// [76543___]
// [______________________43210]
((((long)in[ 3 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in[ 4 + inPos]) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in[ 5 + inPos]) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in[ 6 + inPos]) << 21) & 134217727L);
out[ 2 + outPos] =
// [76______]
// [_________________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in[ 9 + inPos]) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in[10 + inPos]) << 26) & 134217727L);
out[ 3 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in[10 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in[11 + inPos]) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in[12 + inPos]) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in[13 + inPos]) << 23) & 134217727L);
out[ 4 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in[16 + inPos]) << 20) & 134217727L);
out[ 5 + outPos] =
// [7_______]
// [__________________________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in[17 + inPos]) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in[18 + inPos]) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in[19 + inPos]) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in[20 + inPos]) << 25) & 134217727L);
out[ 6 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in[21 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in[22 + inPos]) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in[23 + inPos]) << 22) & 134217727L);
out[ 7 + outPos] =
// [765_____]
// [________________________210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in[24 + inPos]) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in[25 + inPos]) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in[26 + inPos]) << 19) & 134217727L);
out[ 8 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in[30 + inPos]) << 24) & 134217727L);
out[ 9 + outPos] =
// [76543___]
// [______________________43210]
((((long)in[30 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in[31 + inPos]) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in[32 + inPos]) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in[33 + inPos]) << 21) & 134217727L);
out[10 + outPos] =
// [76______]
// [_________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in[37 + inPos]) << 26) & 134217727L);
out[11 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in[37 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in[38 + inPos]) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in[39 + inPos]) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in[40 + inPos]) << 23) & 134217727L);
out[12 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in[41 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in[42 + inPos]) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in[43 + inPos]) << 20) & 134217727L);
out[13 + outPos] =
// [7_______]
// [__________________________0]
((((long)in[43 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in[44 + inPos]) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in[45 + inPos]) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in[46 + inPos]) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in[47 + inPos]) << 25) & 134217727L);
out[14 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in[50 + inPos]) << 22) & 134217727L);
out[15 + outPos] =
// [765_____]
// [________________________210]
((((long)in[50 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in[51 + inPos]) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in[52 + inPos]) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in[53 + inPos]) << 19) & 134217727L);
out[16 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in[56 + inPos]) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in[57 + inPos]) << 24) & 134217727L);
out[17 + outPos] =
// [76543___]
// [______________________43210]
((((long)in[57 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in[58 + inPos]) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in[59 + inPos]) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in[60 + inPos]) << 21) & 134217727L);
out[18 + outPos] =
// [76______]
// [_________________________10]
((((long)in[60 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in[61 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in[62 + inPos]) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in[63 + inPos]) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in[64 + inPos]) << 26) & 134217727L);
out[19 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in[64 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in[65 + inPos]) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in[66 + inPos]) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in[67 + inPos]) << 23) & 134217727L);
out[20 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in[70 + inPos]) << 20) & 134217727L);
out[21 + outPos] =
// [7_______]
// [__________________________0]
((((long)in[70 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in[71 + inPos]) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in[72 + inPos]) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in[73 + inPos]) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in[74 + inPos]) << 25) & 134217727L);
out[22 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in[74 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in[75 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in[76 + inPos]) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in[77 + inPos]) << 22) & 134217727L);
out[23 + outPos] =
// [765_____]
// [________________________210]
((((long)in[77 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in[78 + inPos]) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in[79 + inPos]) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in[80 + inPos]) << 19) & 134217727L);
out[24 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in[81 + inPos]) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in[82 + inPos]) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in[83 + inPos]) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in[84 + inPos]) << 24) & 134217727L);
out[25 + outPos] =
// [76543___]
// [______________________43210]
((((long)in[84 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in[85 + inPos]) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in[86 + inPos]) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in[87 + inPos]) << 21) & 134217727L);
out[26 + outPos] =
// [76______]
// [_________________________10]
((((long)in[87 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in[88 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in[89 + inPos]) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in[90 + inPos]) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in[91 + inPos]) << 26) & 134217727L);
out[27 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in[91 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in[92 + inPos]) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in[93 + inPos]) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in[94 + inPos]) << 23) & 134217727L);
out[28 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in[97 + inPos]) << 20) & 134217727L);
out[29 + outPos] =
// [7_______]
// [__________________________0]
((((long)in[97 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in[98 + inPos]) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in[99 + inPos]) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in[100 + inPos]) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in[101 + inPos]) << 25) & 134217727L);
out[30 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in[101 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in[102 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in[103 + inPos]) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in[104 + inPos]) << 22) & 134217727L);
out[31 + outPos] =
// [765_____]
// [________________________210]
((((long)in[104 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in[105 + inPos]) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in[106 + inPos]) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in[107 + inPos]) << 19) & 134217727L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in.get( 3 + inPos)) << 24) & 134217727L);
out[ 1 + outPos] =
// [76543___]
// [______________________43210]
((((long)in.get( 3 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in.get( 4 + inPos)) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in.get( 5 + inPos)) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in.get( 6 + inPos)) << 21) & 134217727L);
out[ 2 + outPos] =
// [76______]
// [_________________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in.get( 9 + inPos)) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in.get(10 + inPos)) << 26) & 134217727L);
out[ 3 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in.get(10 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in.get(11 + inPos)) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in.get(12 + inPos)) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in.get(13 + inPos)) << 23) & 134217727L);
out[ 4 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in.get(16 + inPos)) << 20) & 134217727L);
out[ 5 + outPos] =
// [7_______]
// [__________________________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in.get(18 + inPos)) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in.get(19 + inPos)) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in.get(20 + inPos)) << 25) & 134217727L);
out[ 6 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in.get(21 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in.get(22 + inPos)) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in.get(23 + inPos)) << 22) & 134217727L);
out[ 7 + outPos] =
// [765_____]
// [________________________210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in.get(24 + inPos)) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in.get(25 + inPos)) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in.get(26 + inPos)) << 19) & 134217727L);
out[ 8 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in.get(30 + inPos)) << 24) & 134217727L);
out[ 9 + outPos] =
// [76543___]
// [______________________43210]
((((long)in.get(30 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in.get(31 + inPos)) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in.get(32 + inPos)) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in.get(33 + inPos)) << 21) & 134217727L);
out[10 + outPos] =
// [76______]
// [_________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in.get(37 + inPos)) << 26) & 134217727L);
out[11 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in.get(37 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in.get(38 + inPos)) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in.get(39 + inPos)) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in.get(40 + inPos)) << 23) & 134217727L);
out[12 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in.get(42 + inPos)) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in.get(43 + inPos)) << 20) & 134217727L);
out[13 + outPos] =
// [7_______]
// [__________________________0]
((((long)in.get(43 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in.get(44 + inPos)) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in.get(45 + inPos)) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in.get(46 + inPos)) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in.get(47 + inPos)) << 25) & 134217727L);
out[14 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in.get(50 + inPos)) << 22) & 134217727L);
out[15 + outPos] =
// [765_____]
// [________________________210]
((((long)in.get(50 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in.get(51 + inPos)) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in.get(52 + inPos)) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in.get(53 + inPos)) << 19) & 134217727L);
out[16 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in.get(56 + inPos)) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in.get(57 + inPos)) << 24) & 134217727L);
out[17 + outPos] =
// [76543___]
// [______________________43210]
((((long)in.get(57 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in.get(58 + inPos)) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in.get(59 + inPos)) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in.get(60 + inPos)) << 21) & 134217727L);
out[18 + outPos] =
// [76______]
// [_________________________10]
((((long)in.get(60 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in.get(61 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in.get(62 + inPos)) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in.get(63 + inPos)) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in.get(64 + inPos)) << 26) & 134217727L);
out[19 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in.get(64 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in.get(65 + inPos)) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in.get(66 + inPos)) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in.get(67 + inPos)) << 23) & 134217727L);
out[20 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in.get(70 + inPos)) << 20) & 134217727L);
out[21 + outPos] =
// [7_______]
// [__________________________0]
((((long)in.get(70 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in.get(71 + inPos)) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in.get(72 + inPos)) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in.get(73 + inPos)) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in.get(74 + inPos)) << 25) & 134217727L);
out[22 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in.get(74 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in.get(75 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in.get(76 + inPos)) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in.get(77 + inPos)) << 22) & 134217727L);
out[23 + outPos] =
// [765_____]
// [________________________210]
((((long)in.get(77 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in.get(78 + inPos)) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in.get(79 + inPos)) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in.get(80 + inPos)) << 19) & 134217727L);
out[24 + outPos] =
// [76543210]
// [___________________76543210]
((((long)in.get(81 + inPos)) ) & 255L)
| // [76543210]
// [___________54321098________]
((((long)in.get(82 + inPos)) << 8) & 65535L)
| // [76543210]
// [___32109876________________]
((((long)in.get(83 + inPos)) << 16) & 16777215L)
| // [_____210]
// [654________________________]
((((long)in.get(84 + inPos)) << 24) & 134217727L);
out[25 + outPos] =
// [76543___]
// [______________________43210]
((((long)in.get(84 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________21098765_____]
((((long)in.get(85 + inPos)) << 5) & 8191L)
| // [76543210]
// [______09876543_____________]
((((long)in.get(86 + inPos)) << 13) & 2097151L)
| // [__543210]
// [654321_____________________]
((((long)in.get(87 + inPos)) << 21) & 134217727L);
out[26 + outPos] =
// [76______]
// [_________________________10]
((((long)in.get(87 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________98765432__]
((((long)in.get(88 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________76543210__________]
((((long)in.get(89 + inPos)) << 10) & 262143L)
| // [76543210]
// [_54321098__________________]
((((long)in.get(90 + inPos)) << 18) & 67108863L)
| // [_______0]
// [6__________________________]
((((long)in.get(91 + inPos)) << 26) & 134217727L);
out[27 + outPos] =
// [7654321_]
// [____________________6543210]
((((long)in.get(91 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________43210987_______]
((((long)in.get(92 + inPos)) << 7) & 32767L)
| // [76543210]
// [____21098765_______________]
((((long)in.get(93 + inPos)) << 15) & 8388607L)
| // [____3210]
// [6543_______________________]
((((long)in.get(94 + inPos)) << 23) & 134217727L);
out[28 + outPos] =
// [7654____]
// [_______________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [_6543210]
// [6543210____________________]
((((long)in.get(97 + inPos)) << 20) & 134217727L);
out[29 + outPos] =
// [7_______]
// [__________________________0]
((((long)in.get(97 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________87654321_]
((((long)in.get(98 + inPos)) << 1) & 511L)
| // [76543210]
// [__________65432109_________]
((((long)in.get(99 + inPos)) << 9) & 131071L)
| // [76543210]
// [__43210987_________________]
((((long)in.get(100 + inPos)) << 17) & 33554431L)
| // [______10]
// [65_________________________]
((((long)in.get(101 + inPos)) << 25) & 134217727L);
out[30 + outPos] =
// [765432__]
// [_____________________543210]
((((long)in.get(101 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________32109876______]
((((long)in.get(102 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____10987654______________]
((((long)in.get(103 + inPos)) << 14) & 4194303L)
| // [___43210]
// [65432______________________]
((((long)in.get(104 + inPos)) << 22) & 134217727L);
out[31 + outPos] =
// [765_____]
// [________________________210]
((((long)in.get(104 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________09876543___]
((((long)in.get(105 + inPos)) << 3) & 2047L)
| // [76543210]
// [________87654321___________]
((((long)in.get(106 + inPos)) << 11) & 524287L)
| // [76543210]
// [65432109___________________]
((((long)in.get(107 + inPos)) << 19) & 134217727L);
}
}
private static final class Packer28 extends BytePackerForLong {
private Packer28() {
super(28);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 0 + inPos] & 268435455L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 0 + inPos] & 268435455L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 0 + inPos] & 268435455L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 0 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 1 + inPos] & 268435455L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 1 + inPos] & 268435455L) >>> 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 1 + inPos] & 268435455L) >>> 12)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 1 + inPos] & 268435455L) >>> 20)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 2 + inPos] & 268435455L))) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 2 + inPos] & 268435455L) >>> 8)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 2 + inPos] & 268435455L) >>> 16)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 2 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 3 + inPos] & 268435455L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 3 + inPos] & 268435455L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 3 + inPos] & 268435455L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 3 + inPos] & 268435455L) >>> 20)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 4 + inPos] & 268435455L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 4 + inPos] & 268435455L) >>> 8)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 4 + inPos] & 268435455L) >>> 16)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 4 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 5 + inPos] & 268435455L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 5 + inPos] & 268435455L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 5 + inPos] & 268435455L) >>> 12)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 5 + inPos] & 268435455L) >>> 20)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 6 + inPos] & 268435455L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 6 + inPos] & 268435455L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 6 + inPos] & 268435455L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 6 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 7 + inPos] & 268435455L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 7 + inPos] & 268435455L) >>> 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 7 + inPos] & 268435455L) >>> 12)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 7 + inPos] & 268435455L) >>> 20)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 0 + inPos] & 268435455L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 0 + inPos] & 268435455L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 0 + inPos] & 268435455L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 0 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 1 + inPos] & 268435455L) << 4)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 1 + inPos] & 268435455L) >>> 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 1 + inPos] & 268435455L) >>> 12)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 1 + inPos] & 268435455L) >>> 20)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 2 + inPos] & 268435455L))) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 2 + inPos] & 268435455L) >>> 8)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 2 + inPos] & 268435455L) >>> 16)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 2 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 3 + inPos] & 268435455L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 3 + inPos] & 268435455L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 3 + inPos] & 268435455L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 3 + inPos] & 268435455L) >>> 20)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 4 + inPos] & 268435455L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 4 + inPos] & 268435455L) >>> 8)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 4 + inPos] & 268435455L) >>> 16)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 4 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 5 + inPos] & 268435455L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 5 + inPos] & 268435455L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 5 + inPos] & 268435455L) >>> 12)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 5 + inPos] & 268435455L) >>> 20)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 6 + inPos] & 268435455L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 6 + inPos] & 268435455L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 6 + inPos] & 268435455L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 6 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 7 + inPos] & 268435455L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 7 + inPos] & 268435455L) >>> 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 7 + inPos] & 268435455L) >>> 12)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 7 + inPos] & 268435455L) >>> 20)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[ 8 + inPos] & 268435455L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[ 8 + inPos] & 268435455L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[ 8 + inPos] & 268435455L) >>> 16)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[ 8 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[ 9 + inPos] & 268435455L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[ 9 + inPos] & 268435455L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[ 9 + inPos] & 268435455L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[ 9 + inPos] & 268435455L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[10 + inPos] & 268435455L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[10 + inPos] & 268435455L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[10 + inPos] & 268435455L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[10 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[11 + inPos] & 268435455L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[11 + inPos] & 268435455L) >>> 4)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[11 + inPos] & 268435455L) >>> 12)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[11 + inPos] & 268435455L) >>> 20)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[12 + inPos] & 268435455L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[12 + inPos] & 268435455L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[12 + inPos] & 268435455L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[12 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[13 + inPos] & 268435455L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[13 + inPos] & 268435455L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[13 + inPos] & 268435455L) >>> 12)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[13 + inPos] & 268435455L) >>> 20)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[14 + inPos] & 268435455L))) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[14 + inPos] & 268435455L) >>> 8)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[14 + inPos] & 268435455L) >>> 16)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[14 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[15 + inPos] & 268435455L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[15 + inPos] & 268435455L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[15 + inPos] & 268435455L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[15 + inPos] & 268435455L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[16 + inPos] & 268435455L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[16 + inPos] & 268435455L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[16 + inPos] & 268435455L) >>> 16)) & 255);
out[59 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[16 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[17 + inPos] & 268435455L) << 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[17 + inPos] & 268435455L) >>> 4)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[17 + inPos] & 268435455L) >>> 12)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[17 + inPos] & 268435455L) >>> 20)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[18 + inPos] & 268435455L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[18 + inPos] & 268435455L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[18 + inPos] & 268435455L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[18 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[19 + inPos] & 268435455L) << 4)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[19 + inPos] & 268435455L) >>> 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[19 + inPos] & 268435455L) >>> 12)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[19 + inPos] & 268435455L) >>> 20)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[20 + inPos] & 268435455L))) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[20 + inPos] & 268435455L) >>> 8)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[20 + inPos] & 268435455L) >>> 16)) & 255);
out[73 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[20 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[21 + inPos] & 268435455L) << 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[21 + inPos] & 268435455L) >>> 4)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[21 + inPos] & 268435455L) >>> 12)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[21 + inPos] & 268435455L) >>> 20)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[22 + inPos] & 268435455L))) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[22 + inPos] & 268435455L) >>> 8)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[22 + inPos] & 268435455L) >>> 16)) & 255);
out[80 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[22 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[23 + inPos] & 268435455L) << 4)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[23 + inPos] & 268435455L) >>> 4)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[23 + inPos] & 268435455L) >>> 12)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[23 + inPos] & 268435455L) >>> 20)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[24 + inPos] & 268435455L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[24 + inPos] & 268435455L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[24 + inPos] & 268435455L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[24 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[25 + inPos] & 268435455L) << 4)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[25 + inPos] & 268435455L) >>> 4)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[25 + inPos] & 268435455L) >>> 12)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[25 + inPos] & 268435455L) >>> 20)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[26 + inPos] & 268435455L))) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[26 + inPos] & 268435455L) >>> 8)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[26 + inPos] & 268435455L) >>> 16)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[26 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[27 + inPos] & 268435455L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[27 + inPos] & 268435455L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[27 + inPos] & 268435455L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[27 + inPos] & 268435455L) >>> 20)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[28 + inPos] & 268435455L))) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[28 + inPos] & 268435455L) >>> 8)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[28 + inPos] & 268435455L) >>> 16)) & 255);
out[101 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[28 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[29 + inPos] & 268435455L) << 4)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[29 + inPos] & 268435455L) >>> 4)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[29 + inPos] & 268435455L) >>> 12)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[29 + inPos] & 268435455L) >>> 20)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________________76543210]
((in[30 + inPos] & 268435455L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____________54321098________]
((in[30 + inPos] & 268435455L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____32109876________________]
((in[30 + inPos] & 268435455L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [____3210]
// [7654________________________]
((in[30 + inPos] & 268435455L) >>> 24)
| // [7654____]
// [________________________3210]
((in[31 + inPos] & 268435455L) << 4)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________10987654____]
((in[31 + inPos] & 268435455L) >>> 4)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________98765432____________]
((in[31 + inPos] & 268435455L) >>> 12)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [76543210____________________]
((in[31 + inPos] & 268435455L) >>> 20)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[ 3 + inPos]) << 24) & 268435455L);
out[ 1 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[ 4 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[ 5 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[ 6 + inPos]) << 20) & 268435455L);
out[ 2 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[ 8 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[ 9 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[10 + inPos]) << 24) & 268435455L);
out[ 3 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[13 + inPos]) << 20) & 268435455L);
out[ 4 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[15 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[16 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[17 + inPos]) << 24) & 268435455L);
out[ 5 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[20 + inPos]) << 20) & 268435455L);
out[ 6 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[24 + inPos]) << 24) & 268435455L);
out[ 7 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[25 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[26 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[27 + inPos]) << 20) & 268435455L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get( 3 + inPos)) << 24) & 268435455L);
out[ 1 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get( 4 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get( 5 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get( 6 + inPos)) << 20) & 268435455L);
out[ 2 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get( 8 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get( 9 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(10 + inPos)) << 24) & 268435455L);
out[ 3 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(13 + inPos)) << 20) & 268435455L);
out[ 4 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(16 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(17 + inPos)) << 24) & 268435455L);
out[ 5 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(20 + inPos)) << 20) & 268435455L);
out[ 6 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(24 + inPos)) << 24) & 268435455L);
out[ 7 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(25 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(26 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(27 + inPos)) << 20) & 268435455L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[ 3 + inPos]) << 24) & 268435455L);
out[ 1 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[ 3 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[ 4 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[ 5 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[ 6 + inPos]) << 20) & 268435455L);
out[ 2 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[ 8 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[ 9 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[10 + inPos]) << 24) & 268435455L);
out[ 3 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[13 + inPos]) << 20) & 268435455L);
out[ 4 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[15 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[16 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[17 + inPos]) << 24) & 268435455L);
out[ 5 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[20 + inPos]) << 20) & 268435455L);
out[ 6 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[24 + inPos]) << 24) & 268435455L);
out[ 7 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[25 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[26 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[27 + inPos]) << 20) & 268435455L);
out[ 8 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[29 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[30 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[31 + inPos]) << 24) & 268435455L);
out[ 9 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L);
out[10 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[38 + inPos]) << 24) & 268435455L);
out[11 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[39 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[40 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[41 + inPos]) << 20) & 268435455L);
out[12 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[45 + inPos]) << 24) & 268435455L);
out[13 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[47 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[48 + inPos]) << 20) & 268435455L);
out[14 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[49 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[50 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[51 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[52 + inPos]) << 24) & 268435455L);
out[15 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L);
out[16 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[57 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[58 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[59 + inPos]) << 24) & 268435455L);
out[17 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[59 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[60 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[61 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[62 + inPos]) << 20) & 268435455L);
out[18 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[66 + inPos]) << 24) & 268435455L);
out[19 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[66 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[67 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[68 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[69 + inPos]) << 20) & 268435455L);
out[20 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[70 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[71 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[72 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[73 + inPos]) << 24) & 268435455L);
out[21 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[73 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[74 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[75 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[76 + inPos]) << 20) & 268435455L);
out[22 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[77 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[78 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[79 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[80 + inPos]) << 24) & 268435455L);
out[23 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[80 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[81 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[82 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[83 + inPos]) << 20) & 268435455L);
out[24 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[87 + inPos]) << 24) & 268435455L);
out[25 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[87 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[88 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[89 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[90 + inPos]) << 20) & 268435455L);
out[26 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[91 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[92 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[93 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[94 + inPos]) << 24) & 268435455L);
out[27 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[97 + inPos]) << 20) & 268435455L);
out[28 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[98 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[99 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[100 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[101 + inPos]) << 24) & 268435455L);
out[29 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[101 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[102 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[103 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[104 + inPos]) << 20) & 268435455L);
out[30 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in[108 + inPos]) << 24) & 268435455L);
out[31 + outPos] =
// [7654____]
// [________________________3210]
((((long)in[108 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in[109 + inPos]) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in[110 + inPos]) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in[111 + inPos]) << 20) & 268435455L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get( 3 + inPos)) << 24) & 268435455L);
out[ 1 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get( 3 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get( 4 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get( 5 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get( 6 + inPos)) << 20) & 268435455L);
out[ 2 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get( 8 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get( 9 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(10 + inPos)) << 24) & 268435455L);
out[ 3 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(13 + inPos)) << 20) & 268435455L);
out[ 4 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(16 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(17 + inPos)) << 24) & 268435455L);
out[ 5 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(20 + inPos)) << 20) & 268435455L);
out[ 6 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(24 + inPos)) << 24) & 268435455L);
out[ 7 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(25 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(26 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(27 + inPos)) << 20) & 268435455L);
out[ 8 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(30 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(31 + inPos)) << 24) & 268435455L);
out[ 9 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L);
out[10 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(38 + inPos)) << 24) & 268435455L);
out[11 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(39 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(40 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(41 + inPos)) << 20) & 268435455L);
out[12 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(45 + inPos)) << 24) & 268435455L);
out[13 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(47 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(48 + inPos)) << 20) & 268435455L);
out[14 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(49 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(50 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(51 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(52 + inPos)) << 24) & 268435455L);
out[15 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L);
out[16 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(58 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(59 + inPos)) << 24) & 268435455L);
out[17 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(59 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(60 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(61 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(62 + inPos)) << 20) & 268435455L);
out[18 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(66 + inPos)) << 24) & 268435455L);
out[19 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(66 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(67 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(68 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(69 + inPos)) << 20) & 268435455L);
out[20 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(70 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(71 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(72 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(73 + inPos)) << 24) & 268435455L);
out[21 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(73 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(74 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(75 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(76 + inPos)) << 20) & 268435455L);
out[22 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(77 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(78 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(79 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(80 + inPos)) << 24) & 268435455L);
out[23 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(80 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(81 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(82 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(83 + inPos)) << 20) & 268435455L);
out[24 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(87 + inPos)) << 24) & 268435455L);
out[25 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(87 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(88 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(89 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(90 + inPos)) << 20) & 268435455L);
out[26 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(91 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(92 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(93 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(94 + inPos)) << 24) & 268435455L);
out[27 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(97 + inPos)) << 20) & 268435455L);
out[28 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(98 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(99 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(100 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(101 + inPos)) << 24) & 268435455L);
out[29 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(101 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(102 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(103 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(104 + inPos)) << 20) & 268435455L);
out[30 + outPos] =
// [76543210]
// [____________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [____________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [____32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [____3210]
// [7654________________________]
((((long)in.get(108 + inPos)) << 24) & 268435455L);
out[31 + outPos] =
// [7654____]
// [________________________3210]
((((long)in.get(108 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________10987654____]
((((long)in.get(109 + inPos)) << 4) & 4095L)
| // [76543210]
// [________98765432____________]
((((long)in.get(110 + inPos)) << 12) & 1048575L)
| // [76543210]
// [76543210____________________]
((((long)in.get(111 + inPos)) << 20) & 268435455L);
}
}
private static final class Packer29 extends BytePackerForLong {
private Packer29() {
super(29);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________76543210]
((in[ 0 + inPos] & 536870911L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________54321098________]
((in[ 0 + inPos] & 536870911L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____32109876________________]
((in[ 0 + inPos] & 536870911L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [___43210]
// [87654________________________]
((in[ 0 + inPos] & 536870911L) >>> 24)
| // [765_____]
// [__________________________210]
((in[ 1 + inPos] & 536870911L) << 5)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________________09876543___]
((in[ 1 + inPos] & 536870911L) >>> 3)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________87654321___________]
((in[ 1 + inPos] & 536870911L) >>> 11)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__65432109___________________]
((in[ 1 + inPos] & 536870911L) >>> 19)) & 255);
out[ 7 + outPos] = (byte)((
// [______10]
// [87___________________________]
((in[ 1 + inPos] & 536870911L) >>> 27)
| // [765432__]
// [_______________________543210]
((in[ 2 + inPos] & 536870911L) << 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_______________32109876______]
((in[ 2 + inPos] & 536870911L) >>> 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_______10987654______________]
((in[ 2 + inPos] & 536870911L) >>> 14)) & 255);
out[10 + outPos] = (byte)((
// [_6543210]
// [8765432______________________]
((in[ 2 + inPos] & 536870911L) >>> 22)
| // [7_______]
// [____________________________0]
((in[ 3 + inPos] & 536870911L) << 7)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________87654321_]
((in[ 3 + inPos] & 536870911L) >>> 1)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________65432109_________]
((in[ 3 + inPos] & 536870911L) >>> 9)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____43210987_________________]
((in[ 3 + inPos] & 536870911L) >>> 17)) & 255);
out[14 + outPos] = (byte)((
// [____3210]
// [8765_________________________]
((in[ 3 + inPos] & 536870911L) >>> 25)
| // [7654____]
// [_________________________3210]
((in[ 4 + inPos] & 536870911L) << 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________10987654____]
((in[ 4 + inPos] & 536870911L) >>> 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________98765432____________]
((in[ 4 + inPos] & 536870911L) >>> 12)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_76543210____________________]
((in[ 4 + inPos] & 536870911L) >>> 20)) & 255);
out[18 + outPos] = (byte)((
// [_______0]
// [8____________________________]
((in[ 4 + inPos] & 536870911L) >>> 28)
| // [7654321_]
// [______________________6543210]
((in[ 5 + inPos] & 536870911L) << 1)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________43210987_______]
((in[ 5 + inPos] & 536870911L) >>> 7)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______21098765_______________]
((in[ 5 + inPos] & 536870911L) >>> 15)) & 255);
out[21 + outPos] = (byte)((
// [__543210]
// [876543_______________________]
((in[ 5 + inPos] & 536870911L) >>> 23)
| // [76______]
// [___________________________10]
((in[ 6 + inPos] & 536870911L) << 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___________________98765432__]
((in[ 6 + inPos] & 536870911L) >>> 2)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___________76543210__________]
((in[ 6 + inPos] & 536870911L) >>> 10)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [___54321098__________________]
((in[ 6 + inPos] & 536870911L) >>> 18)) & 255);
out[25 + outPos] = (byte)((
// [_____210]
// [876__________________________]
((in[ 6 + inPos] & 536870911L) >>> 26)
| // [76543___]
// [________________________43210]
((in[ 7 + inPos] & 536870911L) << 3)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________21098765_____]
((in[ 7 + inPos] & 536870911L) >>> 5)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________09876543_____________]
((in[ 7 + inPos] & 536870911L) >>> 13)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [87654321_____________________]
((in[ 7 + inPos] & 536870911L) >>> 21)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________76543210]
((in[ 0 + inPos] & 536870911L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________54321098________]
((in[ 0 + inPos] & 536870911L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____32109876________________]
((in[ 0 + inPos] & 536870911L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [___43210]
// [87654________________________]
((in[ 0 + inPos] & 536870911L) >>> 24)
| // [765_____]
// [__________________________210]
((in[ 1 + inPos] & 536870911L) << 5)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________________09876543___]
((in[ 1 + inPos] & 536870911L) >>> 3)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________87654321___________]
((in[ 1 + inPos] & 536870911L) >>> 11)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__65432109___________________]
((in[ 1 + inPos] & 536870911L) >>> 19)) & 255);
out[ 7 + outPos] = (byte)((
// [______10]
// [87___________________________]
((in[ 1 + inPos] & 536870911L) >>> 27)
| // [765432__]
// [_______________________543210]
((in[ 2 + inPos] & 536870911L) << 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_______________32109876______]
((in[ 2 + inPos] & 536870911L) >>> 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_______10987654______________]
((in[ 2 + inPos] & 536870911L) >>> 14)) & 255);
out[10 + outPos] = (byte)((
// [_6543210]
// [8765432______________________]
((in[ 2 + inPos] & 536870911L) >>> 22)
| // [7_______]
// [____________________________0]
((in[ 3 + inPos] & 536870911L) << 7)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________87654321_]
((in[ 3 + inPos] & 536870911L) >>> 1)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________65432109_________]
((in[ 3 + inPos] & 536870911L) >>> 9)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____43210987_________________]
((in[ 3 + inPos] & 536870911L) >>> 17)) & 255);
out[14 + outPos] = (byte)((
// [____3210]
// [8765_________________________]
((in[ 3 + inPos] & 536870911L) >>> 25)
| // [7654____]
// [_________________________3210]
((in[ 4 + inPos] & 536870911L) << 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________10987654____]
((in[ 4 + inPos] & 536870911L) >>> 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________98765432____________]
((in[ 4 + inPos] & 536870911L) >>> 12)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_76543210____________________]
((in[ 4 + inPos] & 536870911L) >>> 20)) & 255);
out[18 + outPos] = (byte)((
// [_______0]
// [8____________________________]
((in[ 4 + inPos] & 536870911L) >>> 28)
| // [7654321_]
// [______________________6543210]
((in[ 5 + inPos] & 536870911L) << 1)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________43210987_______]
((in[ 5 + inPos] & 536870911L) >>> 7)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______21098765_______________]
((in[ 5 + inPos] & 536870911L) >>> 15)) & 255);
out[21 + outPos] = (byte)((
// [__543210]
// [876543_______________________]
((in[ 5 + inPos] & 536870911L) >>> 23)
| // [76______]
// [___________________________10]
((in[ 6 + inPos] & 536870911L) << 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___________________98765432__]
((in[ 6 + inPos] & 536870911L) >>> 2)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___________76543210__________]
((in[ 6 + inPos] & 536870911L) >>> 10)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [___54321098__________________]
((in[ 6 + inPos] & 536870911L) >>> 18)) & 255);
out[25 + outPos] = (byte)((
// [_____210]
// [876__________________________]
((in[ 6 + inPos] & 536870911L) >>> 26)
| // [76543___]
// [________________________43210]
((in[ 7 + inPos] & 536870911L) << 3)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________21098765_____]
((in[ 7 + inPos] & 536870911L) >>> 5)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________09876543_____________]
((in[ 7 + inPos] & 536870911L) >>> 13)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [87654321_____________________]
((in[ 7 + inPos] & 536870911L) >>> 21)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____________________76543210]
((in[ 8 + inPos] & 536870911L))) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_____________54321098________]
((in[ 8 + inPos] & 536870911L) >>> 8)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_____32109876________________]
((in[ 8 + inPos] & 536870911L) >>> 16)) & 255);
out[32 + outPos] = (byte)((
// [___43210]
// [87654________________________]
((in[ 8 + inPos] & 536870911L) >>> 24)
| // [765_____]
// [__________________________210]
((in[ 9 + inPos] & 536870911L) << 5)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________________09876543___]
((in[ 9 + inPos] & 536870911L) >>> 3)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________87654321___________]
((in[ 9 + inPos] & 536870911L) >>> 11)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__65432109___________________]
((in[ 9 + inPos] & 536870911L) >>> 19)) & 255);
out[36 + outPos] = (byte)((
// [______10]
// [87___________________________]
((in[ 9 + inPos] & 536870911L) >>> 27)
| // [765432__]
// [_______________________543210]
((in[10 + inPos] & 536870911L) << 2)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_______________32109876______]
((in[10 + inPos] & 536870911L) >>> 6)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_______10987654______________]
((in[10 + inPos] & 536870911L) >>> 14)) & 255);
out[39 + outPos] = (byte)((
// [_6543210]
// [8765432______________________]
((in[10 + inPos] & 536870911L) >>> 22)
| // [7_______]
// [____________________________0]
((in[11 + inPos] & 536870911L) << 7)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________87654321_]
((in[11 + inPos] & 536870911L) >>> 1)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________65432109_________]
((in[11 + inPos] & 536870911L) >>> 9)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____43210987_________________]
((in[11 + inPos] & 536870911L) >>> 17)) & 255);
out[43 + outPos] = (byte)((
// [____3210]
// [8765_________________________]
((in[11 + inPos] & 536870911L) >>> 25)
| // [7654____]
// [_________________________3210]
((in[12 + inPos] & 536870911L) << 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_________________10987654____]
((in[12 + inPos] & 536870911L) >>> 4)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_________98765432____________]
((in[12 + inPos] & 536870911L) >>> 12)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_76543210____________________]
((in[12 + inPos] & 536870911L) >>> 20)) & 255);
out[47 + outPos] = (byte)((
// [_______0]
// [8____________________________]
((in[12 + inPos] & 536870911L) >>> 28)
| // [7654321_]
// [______________________6543210]
((in[13 + inPos] & 536870911L) << 1)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [______________43210987_______]
((in[13 + inPos] & 536870911L) >>> 7)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______21098765_______________]
((in[13 + inPos] & 536870911L) >>> 15)) & 255);
out[50 + outPos] = (byte)((
// [__543210]
// [876543_______________________]
((in[13 + inPos] & 536870911L) >>> 23)
| // [76______]
// [___________________________10]
((in[14 + inPos] & 536870911L) << 6)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [___________________98765432__]
((in[14 + inPos] & 536870911L) >>> 2)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [___________76543210__________]
((in[14 + inPos] & 536870911L) >>> 10)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [___54321098__________________]
((in[14 + inPos] & 536870911L) >>> 18)) & 255);
out[54 + outPos] = (byte)((
// [_____210]
// [876__________________________]
((in[14 + inPos] & 536870911L) >>> 26)
| // [76543___]
// [________________________43210]
((in[15 + inPos] & 536870911L) << 3)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________21098765_____]
((in[15 + inPos] & 536870911L) >>> 5)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________09876543_____________]
((in[15 + inPos] & 536870911L) >>> 13)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [87654321_____________________]
((in[15 + inPos] & 536870911L) >>> 21)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_____________________76543210]
((in[16 + inPos] & 536870911L))) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_____________54321098________]
((in[16 + inPos] & 536870911L) >>> 8)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_____32109876________________]
((in[16 + inPos] & 536870911L) >>> 16)) & 255);
out[61 + outPos] = (byte)((
// [___43210]
// [87654________________________]
((in[16 + inPos] & 536870911L) >>> 24)
| // [765_____]
// [__________________________210]
((in[17 + inPos] & 536870911L) << 5)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__________________09876543___]
((in[17 + inPos] & 536870911L) >>> 3)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [__________87654321___________]
((in[17 + inPos] & 536870911L) >>> 11)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__65432109___________________]
((in[17 + inPos] & 536870911L) >>> 19)) & 255);
out[65 + outPos] = (byte)((
// [______10]
// [87___________________________]
((in[17 + inPos] & 536870911L) >>> 27)
| // [765432__]
// [_______________________543210]
((in[18 + inPos] & 536870911L) << 2)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_______________32109876______]
((in[18 + inPos] & 536870911L) >>> 6)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_______10987654______________]
((in[18 + inPos] & 536870911L) >>> 14)) & 255);
out[68 + outPos] = (byte)((
// [_6543210]
// [8765432______________________]
((in[18 + inPos] & 536870911L) >>> 22)
| // [7_______]
// [____________________________0]
((in[19 + inPos] & 536870911L) << 7)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________________87654321_]
((in[19 + inPos] & 536870911L) >>> 1)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________65432109_________]
((in[19 + inPos] & 536870911L) >>> 9)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____43210987_________________]
((in[19 + inPos] & 536870911L) >>> 17)) & 255);
out[72 + outPos] = (byte)((
// [____3210]
// [8765_________________________]
((in[19 + inPos] & 536870911L) >>> 25)
| // [7654____]
// [_________________________3210]
((in[20 + inPos] & 536870911L) << 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [_________________10987654____]
((in[20 + inPos] & 536870911L) >>> 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_________98765432____________]
((in[20 + inPos] & 536870911L) >>> 12)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_76543210____________________]
((in[20 + inPos] & 536870911L) >>> 20)) & 255);
out[76 + outPos] = (byte)((
// [_______0]
// [8____________________________]
((in[20 + inPos] & 536870911L) >>> 28)
| // [7654321_]
// [______________________6543210]
((in[21 + inPos] & 536870911L) << 1)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______________43210987_______]
((in[21 + inPos] & 536870911L) >>> 7)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [______21098765_______________]
((in[21 + inPos] & 536870911L) >>> 15)) & 255);
out[79 + outPos] = (byte)((
// [__543210]
// [876543_______________________]
((in[21 + inPos] & 536870911L) >>> 23)
| // [76______]
// [___________________________10]
((in[22 + inPos] & 536870911L) << 6)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [___________________98765432__]
((in[22 + inPos] & 536870911L) >>> 2)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [___________76543210__________]
((in[22 + inPos] & 536870911L) >>> 10)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [___54321098__________________]
((in[22 + inPos] & 536870911L) >>> 18)) & 255);
out[83 + outPos] = (byte)((
// [_____210]
// [876__________________________]
((in[22 + inPos] & 536870911L) >>> 26)
| // [76543___]
// [________________________43210]
((in[23 + inPos] & 536870911L) << 3)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________21098765_____]
((in[23 + inPos] & 536870911L) >>> 5)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________09876543_____________]
((in[23 + inPos] & 536870911L) >>> 13)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [87654321_____________________]
((in[23 + inPos] & 536870911L) >>> 21)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_____________________76543210]
((in[24 + inPos] & 536870911L))) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_____________54321098________]
((in[24 + inPos] & 536870911L) >>> 8)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_____32109876________________]
((in[24 + inPos] & 536870911L) >>> 16)) & 255);
out[90 + outPos] = (byte)((
// [___43210]
// [87654________________________]
((in[24 + inPos] & 536870911L) >>> 24)
| // [765_____]
// [__________________________210]
((in[25 + inPos] & 536870911L) << 5)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [__________________09876543___]
((in[25 + inPos] & 536870911L) >>> 3)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [__________87654321___________]
((in[25 + inPos] & 536870911L) >>> 11)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [__65432109___________________]
((in[25 + inPos] & 536870911L) >>> 19)) & 255);
out[94 + outPos] = (byte)((
// [______10]
// [87___________________________]
((in[25 + inPos] & 536870911L) >>> 27)
| // [765432__]
// [_______________________543210]
((in[26 + inPos] & 536870911L) << 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_______________32109876______]
((in[26 + inPos] & 536870911L) >>> 6)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [_______10987654______________]
((in[26 + inPos] & 536870911L) >>> 14)) & 255);
out[97 + outPos] = (byte)((
// [_6543210]
// [8765432______________________]
((in[26 + inPos] & 536870911L) >>> 22)
| // [7_______]
// [____________________________0]
((in[27 + inPos] & 536870911L) << 7)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [____________________87654321_]
((in[27 + inPos] & 536870911L) >>> 1)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________65432109_________]
((in[27 + inPos] & 536870911L) >>> 9)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____43210987_________________]
((in[27 + inPos] & 536870911L) >>> 17)) & 255);
out[101 + outPos] = (byte)((
// [____3210]
// [8765_________________________]
((in[27 + inPos] & 536870911L) >>> 25)
| // [7654____]
// [_________________________3210]
((in[28 + inPos] & 536870911L) << 4)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_________________10987654____]
((in[28 + inPos] & 536870911L) >>> 4)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_________98765432____________]
((in[28 + inPos] & 536870911L) >>> 12)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [_76543210____________________]
((in[28 + inPos] & 536870911L) >>> 20)) & 255);
out[105 + outPos] = (byte)((
// [_______0]
// [8____________________________]
((in[28 + inPos] & 536870911L) >>> 28)
| // [7654321_]
// [______________________6543210]
((in[29 + inPos] & 536870911L) << 1)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [______________43210987_______]
((in[29 + inPos] & 536870911L) >>> 7)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [______21098765_______________]
((in[29 + inPos] & 536870911L) >>> 15)) & 255);
out[108 + outPos] = (byte)((
// [__543210]
// [876543_______________________]
((in[29 + inPos] & 536870911L) >>> 23)
| // [76______]
// [___________________________10]
((in[30 + inPos] & 536870911L) << 6)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [___________________98765432__]
((in[30 + inPos] & 536870911L) >>> 2)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [___________76543210__________]
((in[30 + inPos] & 536870911L) >>> 10)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [___54321098__________________]
((in[30 + inPos] & 536870911L) >>> 18)) & 255);
out[112 + outPos] = (byte)((
// [_____210]
// [876__________________________]
((in[30 + inPos] & 536870911L) >>> 26)
| // [76543___]
// [________________________43210]
((in[31 + inPos] & 536870911L) << 3)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________21098765_____]
((in[31 + inPos] & 536870911L) >>> 5)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________09876543_____________]
((in[31 + inPos] & 536870911L) >>> 13)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [87654321_____________________]
((in[31 + inPos] & 536870911L) >>> 21)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in[ 3 + inPos]) << 24) & 536870911L);
out[ 1 + outPos] =
// [765_____]
// [__________________________210]
((((long)in[ 3 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in[ 4 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in[ 5 + inPos]) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in[ 6 + inPos]) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in[ 7 + inPos]) << 27) & 536870911L);
out[ 2 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in[ 7 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in[ 8 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in[ 9 + inPos]) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in[10 + inPos]) << 22) & 536870911L);
out[ 3 + outPos] =
// [7_______]
// [____________________________0]
((((long)in[10 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in[11 + inPos]) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in[12 + inPos]) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in[13 + inPos]) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in[14 + inPos]) << 25) & 536870911L);
out[ 4 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in[14 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in[15 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in[16 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in[17 + inPos]) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in[18 + inPos]) << 28) & 536870911L);
out[ 5 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in[18 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in[19 + inPos]) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in[20 + inPos]) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in[21 + inPos]) << 23) & 536870911L);
out[ 6 + outPos] =
// [76______]
// [___________________________10]
((((long)in[21 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in[22 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in[23 + inPos]) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in[24 + inPos]) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in[25 + inPos]) << 26) & 536870911L);
out[ 7 + outPos] =
// [76543___]
// [________________________43210]
((((long)in[25 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in[26 + inPos]) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in[27 + inPos]) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in[28 + inPos]) << 21) & 536870911L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in.get( 3 + inPos)) << 24) & 536870911L);
out[ 1 + outPos] =
// [765_____]
// [__________________________210]
((((long)in.get( 3 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in.get( 4 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in.get( 5 + inPos)) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in.get( 6 + inPos)) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in.get( 7 + inPos)) << 27) & 536870911L);
out[ 2 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in.get( 7 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in.get( 8 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in.get( 9 + inPos)) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in.get(10 + inPos)) << 22) & 536870911L);
out[ 3 + outPos] =
// [7_______]
// [____________________________0]
((((long)in.get(10 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in.get(11 + inPos)) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in.get(12 + inPos)) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in.get(13 + inPos)) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in.get(14 + inPos)) << 25) & 536870911L);
out[ 4 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in.get(14 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in.get(15 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in.get(16 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in.get(17 + inPos)) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in.get(18 + inPos)) << 28) & 536870911L);
out[ 5 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in.get(18 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in.get(19 + inPos)) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in.get(20 + inPos)) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in.get(21 + inPos)) << 23) & 536870911L);
out[ 6 + outPos] =
// [76______]
// [___________________________10]
((((long)in.get(21 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in.get(22 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in.get(23 + inPos)) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in.get(24 + inPos)) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in.get(25 + inPos)) << 26) & 536870911L);
out[ 7 + outPos] =
// [76543___]
// [________________________43210]
((((long)in.get(25 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in.get(26 + inPos)) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in.get(27 + inPos)) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in.get(28 + inPos)) << 21) & 536870911L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in[ 3 + inPos]) << 24) & 536870911L);
out[ 1 + outPos] =
// [765_____]
// [__________________________210]
((((long)in[ 3 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in[ 4 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in[ 5 + inPos]) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in[ 6 + inPos]) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in[ 7 + inPos]) << 27) & 536870911L);
out[ 2 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in[ 7 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in[ 8 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in[ 9 + inPos]) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in[10 + inPos]) << 22) & 536870911L);
out[ 3 + outPos] =
// [7_______]
// [____________________________0]
((((long)in[10 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in[11 + inPos]) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in[12 + inPos]) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in[13 + inPos]) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in[14 + inPos]) << 25) & 536870911L);
out[ 4 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in[14 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in[15 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in[16 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in[17 + inPos]) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in[18 + inPos]) << 28) & 536870911L);
out[ 5 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in[18 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in[19 + inPos]) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in[20 + inPos]) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in[21 + inPos]) << 23) & 536870911L);
out[ 6 + outPos] =
// [76______]
// [___________________________10]
((((long)in[21 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in[22 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in[23 + inPos]) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in[24 + inPos]) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in[25 + inPos]) << 26) & 536870911L);
out[ 7 + outPos] =
// [76543___]
// [________________________43210]
((((long)in[25 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in[26 + inPos]) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in[27 + inPos]) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in[28 + inPos]) << 21) & 536870911L);
out[ 8 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in[29 + inPos]) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in[30 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in[31 + inPos]) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in[32 + inPos]) << 24) & 536870911L);
out[ 9 + outPos] =
// [765_____]
// [__________________________210]
((((long)in[32 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in[33 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in[34 + inPos]) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in[35 + inPos]) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in[36 + inPos]) << 27) & 536870911L);
out[10 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in[36 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in[37 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in[38 + inPos]) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in[39 + inPos]) << 22) & 536870911L);
out[11 + outPos] =
// [7_______]
// [____________________________0]
((((long)in[39 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in[40 + inPos]) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in[41 + inPos]) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in[42 + inPos]) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in[43 + inPos]) << 25) & 536870911L);
out[12 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in[43 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in[44 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in[45 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in[46 + inPos]) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in[47 + inPos]) << 28) & 536870911L);
out[13 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in[47 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in[48 + inPos]) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in[49 + inPos]) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in[50 + inPos]) << 23) & 536870911L);
out[14 + outPos] =
// [76______]
// [___________________________10]
((((long)in[50 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in[51 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in[52 + inPos]) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in[53 + inPos]) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in[54 + inPos]) << 26) & 536870911L);
out[15 + outPos] =
// [76543___]
// [________________________43210]
((((long)in[54 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in[55 + inPos]) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in[56 + inPos]) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in[57 + inPos]) << 21) & 536870911L);
out[16 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in[58 + inPos]) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in[59 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in[60 + inPos]) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in[61 + inPos]) << 24) & 536870911L);
out[17 + outPos] =
// [765_____]
// [__________________________210]
((((long)in[61 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in[62 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in[63 + inPos]) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in[64 + inPos]) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in[65 + inPos]) << 27) & 536870911L);
out[18 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in[65 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in[66 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in[67 + inPos]) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in[68 + inPos]) << 22) & 536870911L);
out[19 + outPos] =
// [7_______]
// [____________________________0]
((((long)in[68 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in[69 + inPos]) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in[70 + inPos]) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in[71 + inPos]) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in[72 + inPos]) << 25) & 536870911L);
out[20 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in[72 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in[73 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in[74 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in[75 + inPos]) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in[76 + inPos]) << 28) & 536870911L);
out[21 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in[76 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in[77 + inPos]) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in[78 + inPos]) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in[79 + inPos]) << 23) & 536870911L);
out[22 + outPos] =
// [76______]
// [___________________________10]
((((long)in[79 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in[80 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in[81 + inPos]) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in[82 + inPos]) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in[83 + inPos]) << 26) & 536870911L);
out[23 + outPos] =
// [76543___]
// [________________________43210]
((((long)in[83 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in[84 + inPos]) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in[85 + inPos]) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in[86 + inPos]) << 21) & 536870911L);
out[24 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in[87 + inPos]) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in[88 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in[89 + inPos]) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in[90 + inPos]) << 24) & 536870911L);
out[25 + outPos] =
// [765_____]
// [__________________________210]
((((long)in[90 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in[91 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in[92 + inPos]) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in[93 + inPos]) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in[94 + inPos]) << 27) & 536870911L);
out[26 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in[94 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in[95 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in[96 + inPos]) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in[97 + inPos]) << 22) & 536870911L);
out[27 + outPos] =
// [7_______]
// [____________________________0]
((((long)in[97 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in[98 + inPos]) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in[99 + inPos]) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in[100 + inPos]) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in[101 + inPos]) << 25) & 536870911L);
out[28 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in[101 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in[102 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in[103 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in[104 + inPos]) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in[105 + inPos]) << 28) & 536870911L);
out[29 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in[105 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in[106 + inPos]) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in[107 + inPos]) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in[108 + inPos]) << 23) & 536870911L);
out[30 + outPos] =
// [76______]
// [___________________________10]
((((long)in[108 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in[109 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in[110 + inPos]) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in[111 + inPos]) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in[112 + inPos]) << 26) & 536870911L);
out[31 + outPos] =
// [76543___]
// [________________________43210]
((((long)in[112 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in[113 + inPos]) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in[114 + inPos]) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in[115 + inPos]) << 21) & 536870911L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in.get( 3 + inPos)) << 24) & 536870911L);
out[ 1 + outPos] =
// [765_____]
// [__________________________210]
((((long)in.get( 3 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in.get( 4 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in.get( 5 + inPos)) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in.get( 6 + inPos)) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in.get( 7 + inPos)) << 27) & 536870911L);
out[ 2 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in.get( 7 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in.get( 8 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in.get( 9 + inPos)) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in.get(10 + inPos)) << 22) & 536870911L);
out[ 3 + outPos] =
// [7_______]
// [____________________________0]
((((long)in.get(10 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in.get(11 + inPos)) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in.get(12 + inPos)) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in.get(13 + inPos)) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in.get(14 + inPos)) << 25) & 536870911L);
out[ 4 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in.get(14 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in.get(15 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in.get(16 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in.get(17 + inPos)) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in.get(18 + inPos)) << 28) & 536870911L);
out[ 5 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in.get(18 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in.get(19 + inPos)) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in.get(20 + inPos)) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in.get(21 + inPos)) << 23) & 536870911L);
out[ 6 + outPos] =
// [76______]
// [___________________________10]
((((long)in.get(21 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in.get(22 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in.get(23 + inPos)) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in.get(24 + inPos)) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in.get(25 + inPos)) << 26) & 536870911L);
out[ 7 + outPos] =
// [76543___]
// [________________________43210]
((((long)in.get(25 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in.get(26 + inPos)) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in.get(27 + inPos)) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in.get(28 + inPos)) << 21) & 536870911L);
out[ 8 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in.get(29 + inPos)) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in.get(30 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in.get(31 + inPos)) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in.get(32 + inPos)) << 24) & 536870911L);
out[ 9 + outPos] =
// [765_____]
// [__________________________210]
((((long)in.get(32 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in.get(33 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in.get(34 + inPos)) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in.get(35 + inPos)) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in.get(36 + inPos)) << 27) & 536870911L);
out[10 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in.get(36 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in.get(37 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in.get(38 + inPos)) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in.get(39 + inPos)) << 22) & 536870911L);
out[11 + outPos] =
// [7_______]
// [____________________________0]
((((long)in.get(39 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in.get(40 + inPos)) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in.get(41 + inPos)) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in.get(42 + inPos)) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in.get(43 + inPos)) << 25) & 536870911L);
out[12 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in.get(43 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in.get(44 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in.get(45 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in.get(46 + inPos)) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in.get(47 + inPos)) << 28) & 536870911L);
out[13 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in.get(47 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in.get(48 + inPos)) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in.get(49 + inPos)) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in.get(50 + inPos)) << 23) & 536870911L);
out[14 + outPos] =
// [76______]
// [___________________________10]
((((long)in.get(50 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in.get(51 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in.get(52 + inPos)) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in.get(53 + inPos)) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in.get(54 + inPos)) << 26) & 536870911L);
out[15 + outPos] =
// [76543___]
// [________________________43210]
((((long)in.get(54 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in.get(55 + inPos)) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in.get(56 + inPos)) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in.get(57 + inPos)) << 21) & 536870911L);
out[16 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in.get(58 + inPos)) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in.get(59 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in.get(60 + inPos)) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in.get(61 + inPos)) << 24) & 536870911L);
out[17 + outPos] =
// [765_____]
// [__________________________210]
((((long)in.get(61 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in.get(62 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in.get(63 + inPos)) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in.get(64 + inPos)) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in.get(65 + inPos)) << 27) & 536870911L);
out[18 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in.get(65 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in.get(66 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in.get(67 + inPos)) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in.get(68 + inPos)) << 22) & 536870911L);
out[19 + outPos] =
// [7_______]
// [____________________________0]
((((long)in.get(68 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in.get(69 + inPos)) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in.get(70 + inPos)) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in.get(71 + inPos)) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in.get(72 + inPos)) << 25) & 536870911L);
out[20 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in.get(72 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in.get(73 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in.get(74 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in.get(75 + inPos)) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in.get(76 + inPos)) << 28) & 536870911L);
out[21 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in.get(76 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in.get(77 + inPos)) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in.get(78 + inPos)) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in.get(79 + inPos)) << 23) & 536870911L);
out[22 + outPos] =
// [76______]
// [___________________________10]
((((long)in.get(79 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in.get(80 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in.get(81 + inPos)) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in.get(82 + inPos)) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in.get(83 + inPos)) << 26) & 536870911L);
out[23 + outPos] =
// [76543___]
// [________________________43210]
((((long)in.get(83 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in.get(84 + inPos)) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in.get(85 + inPos)) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in.get(86 + inPos)) << 21) & 536870911L);
out[24 + outPos] =
// [76543210]
// [_____________________76543210]
((((long)in.get(87 + inPos)) ) & 255L)
| // [76543210]
// [_____________54321098________]
((((long)in.get(88 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____32109876________________]
((((long)in.get(89 + inPos)) << 16) & 16777215L)
| // [___43210]
// [87654________________________]
((((long)in.get(90 + inPos)) << 24) & 536870911L);
out[25 + outPos] =
// [765_____]
// [__________________________210]
((((long)in.get(90 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________09876543___]
((((long)in.get(91 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________87654321___________]
((((long)in.get(92 + inPos)) << 11) & 524287L)
| // [76543210]
// [__65432109___________________]
((((long)in.get(93 + inPos)) << 19) & 134217727L)
| // [______10]
// [87___________________________]
((((long)in.get(94 + inPos)) << 27) & 536870911L);
out[26 + outPos] =
// [765432__]
// [_______________________543210]
((((long)in.get(94 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________32109876______]
((((long)in.get(95 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______10987654______________]
((((long)in.get(96 + inPos)) << 14) & 4194303L)
| // [_6543210]
// [8765432______________________]
((((long)in.get(97 + inPos)) << 22) & 536870911L);
out[27 + outPos] =
// [7_______]
// [____________________________0]
((((long)in.get(97 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________87654321_]
((((long)in.get(98 + inPos)) << 1) & 511L)
| // [76543210]
// [____________65432109_________]
((((long)in.get(99 + inPos)) << 9) & 131071L)
| // [76543210]
// [____43210987_________________]
((((long)in.get(100 + inPos)) << 17) & 33554431L)
| // [____3210]
// [8765_________________________]
((((long)in.get(101 + inPos)) << 25) & 536870911L);
out[28 + outPos] =
// [7654____]
// [_________________________3210]
((((long)in.get(101 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________10987654____]
((((long)in.get(102 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________98765432____________]
((((long)in.get(103 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_76543210____________________]
((((long)in.get(104 + inPos)) << 20) & 268435455L)
| // [_______0]
// [8____________________________]
((((long)in.get(105 + inPos)) << 28) & 536870911L);
out[29 + outPos] =
// [7654321_]
// [______________________6543210]
((((long)in.get(105 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________43210987_______]
((((long)in.get(106 + inPos)) << 7) & 32767L)
| // [76543210]
// [______21098765_______________]
((((long)in.get(107 + inPos)) << 15) & 8388607L)
| // [__543210]
// [876543_______________________]
((((long)in.get(108 + inPos)) << 23) & 536870911L);
out[30 + outPos] =
// [76______]
// [___________________________10]
((((long)in.get(108 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________98765432__]
((((long)in.get(109 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________76543210__________]
((((long)in.get(110 + inPos)) << 10) & 262143L)
| // [76543210]
// [___54321098__________________]
((((long)in.get(111 + inPos)) << 18) & 67108863L)
| // [_____210]
// [876__________________________]
((((long)in.get(112 + inPos)) << 26) & 536870911L);
out[31 + outPos] =
// [76543___]
// [________________________43210]
((((long)in.get(112 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________21098765_____]
((((long)in.get(113 + inPos)) << 5) & 8191L)
| // [76543210]
// [________09876543_____________]
((((long)in.get(114 + inPos)) << 13) & 2097151L)
| // [76543210]
// [87654321_____________________]
((((long)in.get(115 + inPos)) << 21) & 536870911L);
}
}
private static final class Packer30 extends BytePackerForLong {
private Packer30() {
super(30);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[ 0 + inPos] & 1073741823L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[ 0 + inPos] & 1073741823L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[ 0 + inPos] & 1073741823L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[ 0 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[ 1 + inPos] & 1073741823L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[ 1 + inPos] & 1073741823L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[ 1 + inPos] & 1073741823L) >>> 10)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[ 1 + inPos] & 1073741823L) >>> 18)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[ 1 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[ 2 + inPos] & 1073741823L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[ 2 + inPos] & 1073741823L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[ 2 + inPos] & 1073741823L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[ 2 + inPos] & 1073741823L) >>> 20)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[ 2 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[ 3 + inPos] & 1073741823L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[ 3 + inPos] & 1073741823L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[ 3 + inPos] & 1073741823L) >>> 14)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[ 3 + inPos] & 1073741823L) >>> 22)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[ 4 + inPos] & 1073741823L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[ 4 + inPos] & 1073741823L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[ 4 + inPos] & 1073741823L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[ 4 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[ 5 + inPos] & 1073741823L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[ 5 + inPos] & 1073741823L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[ 5 + inPos] & 1073741823L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[ 5 + inPos] & 1073741823L) >>> 18)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[ 5 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[ 6 + inPos] & 1073741823L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[ 6 + inPos] & 1073741823L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[ 6 + inPos] & 1073741823L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[ 6 + inPos] & 1073741823L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[ 6 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[ 7 + inPos] & 1073741823L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[ 7 + inPos] & 1073741823L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[ 7 + inPos] & 1073741823L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[ 7 + inPos] & 1073741823L) >>> 22)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[ 0 + inPos] & 1073741823L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[ 0 + inPos] & 1073741823L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[ 0 + inPos] & 1073741823L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[ 0 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[ 1 + inPos] & 1073741823L) << 6)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[ 1 + inPos] & 1073741823L) >>> 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[ 1 + inPos] & 1073741823L) >>> 10)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[ 1 + inPos] & 1073741823L) >>> 18)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[ 1 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[ 2 + inPos] & 1073741823L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[ 2 + inPos] & 1073741823L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[ 2 + inPos] & 1073741823L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[ 2 + inPos] & 1073741823L) >>> 20)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[ 2 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[ 3 + inPos] & 1073741823L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[ 3 + inPos] & 1073741823L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[ 3 + inPos] & 1073741823L) >>> 14)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[ 3 + inPos] & 1073741823L) >>> 22)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[ 4 + inPos] & 1073741823L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[ 4 + inPos] & 1073741823L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[ 4 + inPos] & 1073741823L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[ 4 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[ 5 + inPos] & 1073741823L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[ 5 + inPos] & 1073741823L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[ 5 + inPos] & 1073741823L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[ 5 + inPos] & 1073741823L) >>> 18)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[ 5 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[ 6 + inPos] & 1073741823L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[ 6 + inPos] & 1073741823L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[ 6 + inPos] & 1073741823L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[ 6 + inPos] & 1073741823L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[ 6 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[ 7 + inPos] & 1073741823L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[ 7 + inPos] & 1073741823L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[ 7 + inPos] & 1073741823L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[ 7 + inPos] & 1073741823L) >>> 22)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[ 8 + inPos] & 1073741823L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[ 8 + inPos] & 1073741823L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[ 8 + inPos] & 1073741823L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[ 8 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[ 9 + inPos] & 1073741823L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[ 9 + inPos] & 1073741823L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[ 9 + inPos] & 1073741823L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[ 9 + inPos] & 1073741823L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[ 9 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[10 + inPos] & 1073741823L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[10 + inPos] & 1073741823L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[10 + inPos] & 1073741823L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[10 + inPos] & 1073741823L) >>> 20)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[10 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[11 + inPos] & 1073741823L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[11 + inPos] & 1073741823L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[11 + inPos] & 1073741823L) >>> 14)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[11 + inPos] & 1073741823L) >>> 22)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[12 + inPos] & 1073741823L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[12 + inPos] & 1073741823L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[12 + inPos] & 1073741823L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[12 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[13 + inPos] & 1073741823L) << 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[13 + inPos] & 1073741823L) >>> 2)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[13 + inPos] & 1073741823L) >>> 10)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[13 + inPos] & 1073741823L) >>> 18)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[13 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[14 + inPos] & 1073741823L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[14 + inPos] & 1073741823L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[14 + inPos] & 1073741823L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[14 + inPos] & 1073741823L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[14 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[15 + inPos] & 1073741823L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[15 + inPos] & 1073741823L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[15 + inPos] & 1073741823L) >>> 14)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[15 + inPos] & 1073741823L) >>> 22)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[16 + inPos] & 1073741823L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[16 + inPos] & 1073741823L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[16 + inPos] & 1073741823L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[16 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[17 + inPos] & 1073741823L) << 6)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[17 + inPos] & 1073741823L) >>> 2)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[17 + inPos] & 1073741823L) >>> 10)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[17 + inPos] & 1073741823L) >>> 18)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[17 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[18 + inPos] & 1073741823L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[18 + inPos] & 1073741823L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[18 + inPos] & 1073741823L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[18 + inPos] & 1073741823L) >>> 20)) & 255);
out[71 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[18 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[19 + inPos] & 1073741823L) << 2)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[19 + inPos] & 1073741823L) >>> 6)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[19 + inPos] & 1073741823L) >>> 14)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[19 + inPos] & 1073741823L) >>> 22)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[20 + inPos] & 1073741823L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[20 + inPos] & 1073741823L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[20 + inPos] & 1073741823L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[20 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[21 + inPos] & 1073741823L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[21 + inPos] & 1073741823L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[21 + inPos] & 1073741823L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[21 + inPos] & 1073741823L) >>> 18)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[21 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[22 + inPos] & 1073741823L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[22 + inPos] & 1073741823L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[22 + inPos] & 1073741823L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[22 + inPos] & 1073741823L) >>> 20)) & 255);
out[86 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[22 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[23 + inPos] & 1073741823L) << 2)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[23 + inPos] & 1073741823L) >>> 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[23 + inPos] & 1073741823L) >>> 14)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[23 + inPos] & 1073741823L) >>> 22)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[24 + inPos] & 1073741823L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[24 + inPos] & 1073741823L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[24 + inPos] & 1073741823L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[24 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[25 + inPos] & 1073741823L) << 6)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[25 + inPos] & 1073741823L) >>> 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[25 + inPos] & 1073741823L) >>> 10)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[25 + inPos] & 1073741823L) >>> 18)) & 255);
out[97 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[25 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[26 + inPos] & 1073741823L) << 4)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[26 + inPos] & 1073741823L) >>> 4)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[26 + inPos] & 1073741823L) >>> 12)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[26 + inPos] & 1073741823L) >>> 20)) & 255);
out[101 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[26 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[27 + inPos] & 1073741823L) << 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[27 + inPos] & 1073741823L) >>> 6)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[27 + inPos] & 1073741823L) >>> 14)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[27 + inPos] & 1073741823L) >>> 22)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [______________________76543210]
((in[28 + inPos] & 1073741823L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [______________54321098________]
((in[28 + inPos] & 1073741823L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [______32109876________________]
((in[28 + inPos] & 1073741823L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [__543210]
// [987654________________________]
((in[28 + inPos] & 1073741823L) >>> 24)
| // [76______]
// [____________________________10]
((in[29 + inPos] & 1073741823L) << 6)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____________________98765432__]
((in[29 + inPos] & 1073741823L) >>> 2)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________76543210__________]
((in[29 + inPos] & 1073741823L) >>> 10)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____54321098__________________]
((in[29 + inPos] & 1073741823L) >>> 18)) & 255);
out[112 + outPos] = (byte)((
// [____3210]
// [9876__________________________]
((in[29 + inPos] & 1073741823L) >>> 26)
| // [7654____]
// [__________________________3210]
((in[30 + inPos] & 1073741823L) << 4)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [__________________10987654____]
((in[30 + inPos] & 1073741823L) >>> 4)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [__________98765432____________]
((in[30 + inPos] & 1073741823L) >>> 12)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [__76543210____________________]
((in[30 + inPos] & 1073741823L) >>> 20)) & 255);
out[116 + outPos] = (byte)((
// [______10]
// [98____________________________]
((in[30 + inPos] & 1073741823L) >>> 28)
| // [765432__]
// [________________________543210]
((in[31 + inPos] & 1073741823L) << 2)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________32109876______]
((in[31 + inPos] & 1073741823L) >>> 6)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________10987654______________]
((in[31 + inPos] & 1073741823L) >>> 14)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [98765432______________________]
((in[31 + inPos] & 1073741823L) >>> 22)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[ 3 + inPos]) << 24) & 1073741823L);
out[ 1 + outPos] =
// [76______]
// [____________________________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[ 5 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[ 6 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[ 7 + inPos]) << 26) & 1073741823L);
out[ 2 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[10 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[11 + inPos]) << 28) & 1073741823L);
out[ 3 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[13 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[14 + inPos]) << 22) & 1073741823L);
out[ 4 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[18 + inPos]) << 24) & 1073741823L);
out[ 5 + outPos] =
// [76______]
// [____________________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[21 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[22 + inPos]) << 26) & 1073741823L);
out[ 6 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[26 + inPos]) << 28) & 1073741823L);
out[ 7 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 1073741823L);
out[ 1 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get( 5 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get( 6 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get( 7 + inPos)) << 26) & 1073741823L);
out[ 2 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(10 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(11 + inPos)) << 28) & 1073741823L);
out[ 3 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(13 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(14 + inPos)) << 22) & 1073741823L);
out[ 4 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(18 + inPos)) << 24) & 1073741823L);
out[ 5 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(21 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(22 + inPos)) << 26) & 1073741823L);
out[ 6 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(26 + inPos)) << 28) & 1073741823L);
out[ 7 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[ 3 + inPos]) << 24) & 1073741823L);
out[ 1 + outPos] =
// [76______]
// [____________________________10]
((((long)in[ 3 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[ 4 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[ 5 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[ 6 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[ 7 + inPos]) << 26) & 1073741823L);
out[ 2 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[10 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[11 + inPos]) << 28) & 1073741823L);
out[ 3 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[13 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[14 + inPos]) << 22) & 1073741823L);
out[ 4 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[18 + inPos]) << 24) & 1073741823L);
out[ 5 + outPos] =
// [76______]
// [____________________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[21 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[22 + inPos]) << 26) & 1073741823L);
out[ 6 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[26 + inPos]) << 28) & 1073741823L);
out[ 7 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L);
out[ 8 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[33 + inPos]) << 24) & 1073741823L);
out[ 9 + outPos] =
// [76______]
// [____________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[37 + inPos]) << 26) & 1073741823L);
out[10 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[40 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[41 + inPos]) << 28) & 1073741823L);
out[11 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[43 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[44 + inPos]) << 22) & 1073741823L);
out[12 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[48 + inPos]) << 24) & 1073741823L);
out[13 + outPos] =
// [76______]
// [____________________________10]
((((long)in[48 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[49 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[50 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[51 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[52 + inPos]) << 26) & 1073741823L);
out[14 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[56 + inPos]) << 28) & 1073741823L);
out[15 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[58 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[59 + inPos]) << 22) & 1073741823L);
out[16 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[63 + inPos]) << 24) & 1073741823L);
out[17 + outPos] =
// [76______]
// [____________________________10]
((((long)in[63 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[64 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[65 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[66 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[67 + inPos]) << 26) & 1073741823L);
out[18 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[70 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[71 + inPos]) << 28) & 1073741823L);
out[19 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[71 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[72 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[73 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[74 + inPos]) << 22) & 1073741823L);
out[20 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[78 + inPos]) << 24) & 1073741823L);
out[21 + outPos] =
// [76______]
// [____________________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[81 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[82 + inPos]) << 26) & 1073741823L);
out[22 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[85 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[86 + inPos]) << 28) & 1073741823L);
out[23 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[86 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[87 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[88 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[89 + inPos]) << 22) & 1073741823L);
out[24 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[93 + inPos]) << 24) & 1073741823L);
out[25 + outPos] =
// [76______]
// [____________________________10]
((((long)in[93 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[94 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[95 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[96 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[97 + inPos]) << 26) & 1073741823L);
out[26 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[97 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[98 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[99 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[100 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[101 + inPos]) << 28) & 1073741823L);
out[27 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[101 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[102 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[103 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[104 + inPos]) << 22) & 1073741823L);
out[28 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in[108 + inPos]) << 24) & 1073741823L);
out[29 + outPos] =
// [76______]
// [____________________________10]
((((long)in[108 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in[109 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in[110 + inPos]) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in[111 + inPos]) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in[112 + inPos]) << 26) & 1073741823L);
out[30 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in[112 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in[113 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in[114 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in[115 + inPos]) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in[116 + inPos]) << 28) & 1073741823L);
out[31 + outPos] =
// [765432__]
// [________________________543210]
((((long)in[116 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in[117 + inPos]) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in[118 + inPos]) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in[119 + inPos]) << 22) & 1073741823L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 1073741823L);
out[ 1 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get( 3 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get( 4 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get( 5 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get( 6 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get( 7 + inPos)) << 26) & 1073741823L);
out[ 2 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(10 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(11 + inPos)) << 28) & 1073741823L);
out[ 3 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(13 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(14 + inPos)) << 22) & 1073741823L);
out[ 4 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(18 + inPos)) << 24) & 1073741823L);
out[ 5 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(21 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(22 + inPos)) << 26) & 1073741823L);
out[ 6 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(26 + inPos)) << 28) & 1073741823L);
out[ 7 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L);
out[ 8 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(33 + inPos)) << 24) & 1073741823L);
out[ 9 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(37 + inPos)) << 26) & 1073741823L);
out[10 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(40 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(41 + inPos)) << 28) & 1073741823L);
out[11 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(43 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(44 + inPos)) << 22) & 1073741823L);
out[12 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(48 + inPos)) << 24) & 1073741823L);
out[13 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(48 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(49 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(50 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(51 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(52 + inPos)) << 26) & 1073741823L);
out[14 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(56 + inPos)) << 28) & 1073741823L);
out[15 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(58 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(59 + inPos)) << 22) & 1073741823L);
out[16 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(63 + inPos)) << 24) & 1073741823L);
out[17 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(63 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(64 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(65 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(66 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(67 + inPos)) << 26) & 1073741823L);
out[18 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(70 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(71 + inPos)) << 28) & 1073741823L);
out[19 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(71 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(72 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(73 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(74 + inPos)) << 22) & 1073741823L);
out[20 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(78 + inPos)) << 24) & 1073741823L);
out[21 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(81 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(82 + inPos)) << 26) & 1073741823L);
out[22 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(85 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(86 + inPos)) << 28) & 1073741823L);
out[23 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(86 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(87 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(88 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(89 + inPos)) << 22) & 1073741823L);
out[24 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(93 + inPos)) << 24) & 1073741823L);
out[25 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(93 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(94 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(95 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(96 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(97 + inPos)) << 26) & 1073741823L);
out[26 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(97 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(98 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(99 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(100 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(101 + inPos)) << 28) & 1073741823L);
out[27 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(101 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(102 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(103 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(104 + inPos)) << 22) & 1073741823L);
out[28 + outPos] =
// [76543210]
// [______________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [______________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [______32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [__543210]
// [987654________________________]
((((long)in.get(108 + inPos)) << 24) & 1073741823L);
out[29 + outPos] =
// [76______]
// [____________________________10]
((((long)in.get(108 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________98765432__]
((((long)in.get(109 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________76543210__________]
((((long)in.get(110 + inPos)) << 10) & 262143L)
| // [76543210]
// [____54321098__________________]
((((long)in.get(111 + inPos)) << 18) & 67108863L)
| // [____3210]
// [9876__________________________]
((((long)in.get(112 + inPos)) << 26) & 1073741823L);
out[30 + outPos] =
// [7654____]
// [__________________________3210]
((((long)in.get(112 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________10987654____]
((((long)in.get(113 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________98765432____________]
((((long)in.get(114 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__76543210____________________]
((((long)in.get(115 + inPos)) << 20) & 268435455L)
| // [______10]
// [98____________________________]
((((long)in.get(116 + inPos)) << 28) & 1073741823L);
out[31 + outPos] =
// [765432__]
// [________________________543210]
((((long)in.get(116 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________32109876______]
((((long)in.get(117 + inPos)) << 6) & 16383L)
| // [76543210]
// [________10987654______________]
((((long)in.get(118 + inPos)) << 14) & 4194303L)
| // [76543210]
// [98765432______________________]
((((long)in.get(119 + inPos)) << 22) & 1073741823L);
}
}
private static final class Packer31 extends BytePackerForLong {
private Packer31() {
super(31);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________76543210]
((in[ 0 + inPos] & 2147483647L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________54321098________]
((in[ 0 + inPos] & 2147483647L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______32109876________________]
((in[ 0 + inPos] & 2147483647L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_6543210]
// [0987654________________________]
((in[ 0 + inPos] & 2147483647L) >>> 24)
| // [7_______]
// [______________________________0]
((in[ 1 + inPos] & 2147483647L) << 7)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________________87654321_]
((in[ 1 + inPos] & 2147483647L) >>> 1)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________65432109_________]
((in[ 1 + inPos] & 2147483647L) >>> 9)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______43210987_________________]
((in[ 1 + inPos] & 2147483647L) >>> 17)) & 255);
out[ 7 + outPos] = (byte)((
// [__543210]
// [098765_________________________]
((in[ 1 + inPos] & 2147483647L) >>> 25)
| // [76______]
// [_____________________________10]
((in[ 2 + inPos] & 2147483647L) << 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_____________________98765432__]
((in[ 2 + inPos] & 2147483647L) >>> 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_____________76543210__________]
((in[ 2 + inPos] & 2147483647L) >>> 10)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_____54321098__________________]
((in[ 2 + inPos] & 2147483647L) >>> 18)) & 255);
out[11 + outPos] = (byte)((
// [___43210]
// [09876__________________________]
((in[ 2 + inPos] & 2147483647L) >>> 26)
| // [765_____]
// [____________________________210]
((in[ 3 + inPos] & 2147483647L) << 5)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________09876543___]
((in[ 3 + inPos] & 2147483647L) >>> 3)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________87654321___________]
((in[ 3 + inPos] & 2147483647L) >>> 11)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____65432109___________________]
((in[ 3 + inPos] & 2147483647L) >>> 19)) & 255);
out[15 + outPos] = (byte)((
// [____3210]
// [0987___________________________]
((in[ 3 + inPos] & 2147483647L) >>> 27)
| // [7654____]
// [___________________________3210]
((in[ 4 + inPos] & 2147483647L) << 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________________10987654____]
((in[ 4 + inPos] & 2147483647L) >>> 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___________98765432____________]
((in[ 4 + inPos] & 2147483647L) >>> 12)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [___76543210____________________]
((in[ 4 + inPos] & 2147483647L) >>> 20)) & 255);
out[19 + outPos] = (byte)((
// [_____210]
// [098____________________________]
((in[ 4 + inPos] & 2147483647L) >>> 28)
| // [76543___]
// [__________________________43210]
((in[ 5 + inPos] & 2147483647L) << 3)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__________________21098765_____]
((in[ 5 + inPos] & 2147483647L) >>> 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________09876543_____________]
((in[ 5 + inPos] & 2147483647L) >>> 13)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__87654321_____________________]
((in[ 5 + inPos] & 2147483647L) >>> 21)) & 255);
out[23 + outPos] = (byte)((
// [______10]
// [09_____________________________]
((in[ 5 + inPos] & 2147483647L) >>> 29)
| // [765432__]
// [_________________________543210]
((in[ 6 + inPos] & 2147483647L) << 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_________________32109876______]
((in[ 6 + inPos] & 2147483647L) >>> 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_________10987654______________]
((in[ 6 + inPos] & 2147483647L) >>> 14)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_98765432______________________]
((in[ 6 + inPos] & 2147483647L) >>> 22)) & 255);
out[27 + outPos] = (byte)((
// [_______0]
// [0______________________________]
((in[ 6 + inPos] & 2147483647L) >>> 30)
| // [7654321_]
// [________________________6543210]
((in[ 7 + inPos] & 2147483647L) << 1)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________43210987_______]
((in[ 7 + inPos] & 2147483647L) >>> 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________21098765_______________]
((in[ 7 + inPos] & 2147483647L) >>> 15)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [09876543_______________________]
((in[ 7 + inPos] & 2147483647L) >>> 23)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________76543210]
((in[ 0 + inPos] & 2147483647L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________54321098________]
((in[ 0 + inPos] & 2147483647L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______32109876________________]
((in[ 0 + inPos] & 2147483647L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [_6543210]
// [0987654________________________]
((in[ 0 + inPos] & 2147483647L) >>> 24)
| // [7_______]
// [______________________________0]
((in[ 1 + inPos] & 2147483647L) << 7)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________________87654321_]
((in[ 1 + inPos] & 2147483647L) >>> 1)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________65432109_________]
((in[ 1 + inPos] & 2147483647L) >>> 9)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______43210987_________________]
((in[ 1 + inPos] & 2147483647L) >>> 17)) & 255);
out[ 7 + outPos] = (byte)((
// [__543210]
// [098765_________________________]
((in[ 1 + inPos] & 2147483647L) >>> 25)
| // [76______]
// [_____________________________10]
((in[ 2 + inPos] & 2147483647L) << 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [_____________________98765432__]
((in[ 2 + inPos] & 2147483647L) >>> 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_____________76543210__________]
((in[ 2 + inPos] & 2147483647L) >>> 10)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_____54321098__________________]
((in[ 2 + inPos] & 2147483647L) >>> 18)) & 255);
out[11 + outPos] = (byte)((
// [___43210]
// [09876__________________________]
((in[ 2 + inPos] & 2147483647L) >>> 26)
| // [765_____]
// [____________________________210]
((in[ 3 + inPos] & 2147483647L) << 5)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________09876543___]
((in[ 3 + inPos] & 2147483647L) >>> 3)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________87654321___________]
((in[ 3 + inPos] & 2147483647L) >>> 11)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____65432109___________________]
((in[ 3 + inPos] & 2147483647L) >>> 19)) & 255);
out[15 + outPos] = (byte)((
// [____3210]
// [0987___________________________]
((in[ 3 + inPos] & 2147483647L) >>> 27)
| // [7654____]
// [___________________________3210]
((in[ 4 + inPos] & 2147483647L) << 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________________10987654____]
((in[ 4 + inPos] & 2147483647L) >>> 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___________98765432____________]
((in[ 4 + inPos] & 2147483647L) >>> 12)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [___76543210____________________]
((in[ 4 + inPos] & 2147483647L) >>> 20)) & 255);
out[19 + outPos] = (byte)((
// [_____210]
// [098____________________________]
((in[ 4 + inPos] & 2147483647L) >>> 28)
| // [76543___]
// [__________________________43210]
((in[ 5 + inPos] & 2147483647L) << 3)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__________________21098765_____]
((in[ 5 + inPos] & 2147483647L) >>> 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________09876543_____________]
((in[ 5 + inPos] & 2147483647L) >>> 13)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__87654321_____________________]
((in[ 5 + inPos] & 2147483647L) >>> 21)) & 255);
out[23 + outPos] = (byte)((
// [______10]
// [09_____________________________]
((in[ 5 + inPos] & 2147483647L) >>> 29)
| // [765432__]
// [_________________________543210]
((in[ 6 + inPos] & 2147483647L) << 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_________________32109876______]
((in[ 6 + inPos] & 2147483647L) >>> 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_________10987654______________]
((in[ 6 + inPos] & 2147483647L) >>> 14)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_98765432______________________]
((in[ 6 + inPos] & 2147483647L) >>> 22)) & 255);
out[27 + outPos] = (byte)((
// [_______0]
// [0______________________________]
((in[ 6 + inPos] & 2147483647L) >>> 30)
| // [7654321_]
// [________________________6543210]
((in[ 7 + inPos] & 2147483647L) << 1)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________43210987_______]
((in[ 7 + inPos] & 2147483647L) >>> 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________21098765_______________]
((in[ 7 + inPos] & 2147483647L) >>> 15)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [09876543_______________________]
((in[ 7 + inPos] & 2147483647L) >>> 23)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_______________________76543210]
((in[ 8 + inPos] & 2147483647L))) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_______________54321098________]
((in[ 8 + inPos] & 2147483647L) >>> 8)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_______32109876________________]
((in[ 8 + inPos] & 2147483647L) >>> 16)) & 255);
out[34 + outPos] = (byte)((
// [_6543210]
// [0987654________________________]
((in[ 8 + inPos] & 2147483647L) >>> 24)
| // [7_______]
// [______________________________0]
((in[ 9 + inPos] & 2147483647L) << 7)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______________________87654321_]
((in[ 9 + inPos] & 2147483647L) >>> 1)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________65432109_________]
((in[ 9 + inPos] & 2147483647L) >>> 9)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______43210987_________________]
((in[ 9 + inPos] & 2147483647L) >>> 17)) & 255);
out[38 + outPos] = (byte)((
// [__543210]
// [098765_________________________]
((in[ 9 + inPos] & 2147483647L) >>> 25)
| // [76______]
// [_____________________________10]
((in[10 + inPos] & 2147483647L) << 6)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____________________98765432__]
((in[10 + inPos] & 2147483647L) >>> 2)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_____________76543210__________]
((in[10 + inPos] & 2147483647L) >>> 10)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_____54321098__________________]
((in[10 + inPos] & 2147483647L) >>> 18)) & 255);
out[42 + outPos] = (byte)((
// [___43210]
// [09876__________________________]
((in[10 + inPos] & 2147483647L) >>> 26)
| // [765_____]
// [____________________________210]
((in[11 + inPos] & 2147483647L) << 5)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________________09876543___]
((in[11 + inPos] & 2147483647L) >>> 3)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____________87654321___________]
((in[11 + inPos] & 2147483647L) >>> 11)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____65432109___________________]
((in[11 + inPos] & 2147483647L) >>> 19)) & 255);
out[46 + outPos] = (byte)((
// [____3210]
// [0987___________________________]
((in[11 + inPos] & 2147483647L) >>> 27)
| // [7654____]
// [___________________________3210]
((in[12 + inPos] & 2147483647L) << 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [___________________10987654____]
((in[12 + inPos] & 2147483647L) >>> 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [___________98765432____________]
((in[12 + inPos] & 2147483647L) >>> 12)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [___76543210____________________]
((in[12 + inPos] & 2147483647L) >>> 20)) & 255);
out[50 + outPos] = (byte)((
// [_____210]
// [098____________________________]
((in[12 + inPos] & 2147483647L) >>> 28)
| // [76543___]
// [__________________________43210]
((in[13 + inPos] & 2147483647L) << 3)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________21098765_____]
((in[13 + inPos] & 2147483647L) >>> 5)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________09876543_____________]
((in[13 + inPos] & 2147483647L) >>> 13)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__87654321_____________________]
((in[13 + inPos] & 2147483647L) >>> 21)) & 255);
out[54 + outPos] = (byte)((
// [______10]
// [09_____________________________]
((in[13 + inPos] & 2147483647L) >>> 29)
| // [765432__]
// [_________________________543210]
((in[14 + inPos] & 2147483647L) << 2)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [_________________32109876______]
((in[14 + inPos] & 2147483647L) >>> 6)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [_________10987654______________]
((in[14 + inPos] & 2147483647L) >>> 14)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_98765432______________________]
((in[14 + inPos] & 2147483647L) >>> 22)) & 255);
out[58 + outPos] = (byte)((
// [_______0]
// [0______________________________]
((in[14 + inPos] & 2147483647L) >>> 30)
| // [7654321_]
// [________________________6543210]
((in[15 + inPos] & 2147483647L) << 1)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________43210987_______]
((in[15 + inPos] & 2147483647L) >>> 7)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________21098765_______________]
((in[15 + inPos] & 2147483647L) >>> 15)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [09876543_______________________]
((in[15 + inPos] & 2147483647L) >>> 23)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_______________________76543210]
((in[16 + inPos] & 2147483647L))) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_______________54321098________]
((in[16 + inPos] & 2147483647L) >>> 8)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_______32109876________________]
((in[16 + inPos] & 2147483647L) >>> 16)) & 255);
out[65 + outPos] = (byte)((
// [_6543210]
// [0987654________________________]
((in[16 + inPos] & 2147483647L) >>> 24)
| // [7_______]
// [______________________________0]
((in[17 + inPos] & 2147483647L) << 7)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________________87654321_]
((in[17 + inPos] & 2147483647L) >>> 1)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______________65432109_________]
((in[17 + inPos] & 2147483647L) >>> 9)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [______43210987_________________]
((in[17 + inPos] & 2147483647L) >>> 17)) & 255);
out[69 + outPos] = (byte)((
// [__543210]
// [098765_________________________]
((in[17 + inPos] & 2147483647L) >>> 25)
| // [76______]
// [_____________________________10]
((in[18 + inPos] & 2147483647L) << 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_____________________98765432__]
((in[18 + inPos] & 2147483647L) >>> 2)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [_____________76543210__________]
((in[18 + inPos] & 2147483647L) >>> 10)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_____54321098__________________]
((in[18 + inPos] & 2147483647L) >>> 18)) & 255);
out[73 + outPos] = (byte)((
// [___43210]
// [09876__________________________]
((in[18 + inPos] & 2147483647L) >>> 26)
| // [765_____]
// [____________________________210]
((in[19 + inPos] & 2147483647L) << 5)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________________09876543___]
((in[19 + inPos] & 2147483647L) >>> 3)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________87654321___________]
((in[19 + inPos] & 2147483647L) >>> 11)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____65432109___________________]
((in[19 + inPos] & 2147483647L) >>> 19)) & 255);
out[77 + outPos] = (byte)((
// [____3210]
// [0987___________________________]
((in[19 + inPos] & 2147483647L) >>> 27)
| // [7654____]
// [___________________________3210]
((in[20 + inPos] & 2147483647L) << 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [___________________10987654____]
((in[20 + inPos] & 2147483647L) >>> 4)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [___________98765432____________]
((in[20 + inPos] & 2147483647L) >>> 12)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [___76543210____________________]
((in[20 + inPos] & 2147483647L) >>> 20)) & 255);
out[81 + outPos] = (byte)((
// [_____210]
// [098____________________________]
((in[20 + inPos] & 2147483647L) >>> 28)
| // [76543___]
// [__________________________43210]
((in[21 + inPos] & 2147483647L) << 3)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [__________________21098765_____]
((in[21 + inPos] & 2147483647L) >>> 5)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________09876543_____________]
((in[21 + inPos] & 2147483647L) >>> 13)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__87654321_____________________]
((in[21 + inPos] & 2147483647L) >>> 21)) & 255);
out[85 + outPos] = (byte)((
// [______10]
// [09_____________________________]
((in[21 + inPos] & 2147483647L) >>> 29)
| // [765432__]
// [_________________________543210]
((in[22 + inPos] & 2147483647L) << 2)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_________________32109876______]
((in[22 + inPos] & 2147483647L) >>> 6)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_________10987654______________]
((in[22 + inPos] & 2147483647L) >>> 14)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_98765432______________________]
((in[22 + inPos] & 2147483647L) >>> 22)) & 255);
out[89 + outPos] = (byte)((
// [_______0]
// [0______________________________]
((in[22 + inPos] & 2147483647L) >>> 30)
| // [7654321_]
// [________________________6543210]
((in[23 + inPos] & 2147483647L) << 1)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________43210987_______]
((in[23 + inPos] & 2147483647L) >>> 7)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________21098765_______________]
((in[23 + inPos] & 2147483647L) >>> 15)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [09876543_______________________]
((in[23 + inPos] & 2147483647L) >>> 23)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_______________________76543210]
((in[24 + inPos] & 2147483647L))) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_______________54321098________]
((in[24 + inPos] & 2147483647L) >>> 8)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_______32109876________________]
((in[24 + inPos] & 2147483647L) >>> 16)) & 255);
out[96 + outPos] = (byte)((
// [_6543210]
// [0987654________________________]
((in[24 + inPos] & 2147483647L) >>> 24)
| // [7_______]
// [______________________________0]
((in[25 + inPos] & 2147483647L) << 7)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [______________________87654321_]
((in[25 + inPos] & 2147483647L) >>> 1)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______________65432109_________]
((in[25 + inPos] & 2147483647L) >>> 9)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [______43210987_________________]
((in[25 + inPos] & 2147483647L) >>> 17)) & 255);
out[100 + outPos] = (byte)((
// [__543210]
// [098765_________________________]
((in[25 + inPos] & 2147483647L) >>> 25)
| // [76______]
// [_____________________________10]
((in[26 + inPos] & 2147483647L) << 6)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_____________________98765432__]
((in[26 + inPos] & 2147483647L) >>> 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_____________76543210__________]
((in[26 + inPos] & 2147483647L) >>> 10)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_____54321098__________________]
((in[26 + inPos] & 2147483647L) >>> 18)) & 255);
out[104 + outPos] = (byte)((
// [___43210]
// [09876__________________________]
((in[26 + inPos] & 2147483647L) >>> 26)
| // [765_____]
// [____________________________210]
((in[27 + inPos] & 2147483647L) << 5)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________________09876543___]
((in[27 + inPos] & 2147483647L) >>> 3)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____________87654321___________]
((in[27 + inPos] & 2147483647L) >>> 11)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____65432109___________________]
((in[27 + inPos] & 2147483647L) >>> 19)) & 255);
out[108 + outPos] = (byte)((
// [____3210]
// [0987___________________________]
((in[27 + inPos] & 2147483647L) >>> 27)
| // [7654____]
// [___________________________3210]
((in[28 + inPos] & 2147483647L) << 4)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [___________________10987654____]
((in[28 + inPos] & 2147483647L) >>> 4)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [___________98765432____________]
((in[28 + inPos] & 2147483647L) >>> 12)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [___76543210____________________]
((in[28 + inPos] & 2147483647L) >>> 20)) & 255);
out[112 + outPos] = (byte)((
// [_____210]
// [098____________________________]
((in[28 + inPos] & 2147483647L) >>> 28)
| // [76543___]
// [__________________________43210]
((in[29 + inPos] & 2147483647L) << 3)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [__________________21098765_____]
((in[29 + inPos] & 2147483647L) >>> 5)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [__________09876543_____________]
((in[29 + inPos] & 2147483647L) >>> 13)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [__87654321_____________________]
((in[29 + inPos] & 2147483647L) >>> 21)) & 255);
out[116 + outPos] = (byte)((
// [______10]
// [09_____________________________]
((in[29 + inPos] & 2147483647L) >>> 29)
| // [765432__]
// [_________________________543210]
((in[30 + inPos] & 2147483647L) << 2)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_________________32109876______]
((in[30 + inPos] & 2147483647L) >>> 6)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [_________10987654______________]
((in[30 + inPos] & 2147483647L) >>> 14)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [_98765432______________________]
((in[30 + inPos] & 2147483647L) >>> 22)) & 255);
out[120 + outPos] = (byte)((
// [_______0]
// [0______________________________]
((in[30 + inPos] & 2147483647L) >>> 30)
| // [7654321_]
// [________________________6543210]
((in[31 + inPos] & 2147483647L) << 1)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________43210987_______]
((in[31 + inPos] & 2147483647L) >>> 7)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________21098765_______________]
((in[31 + inPos] & 2147483647L) >>> 15)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [09876543_______________________]
((in[31 + inPos] & 2147483647L) >>> 23)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in[ 3 + inPos]) << 24) & 2147483647L);
out[ 1 + outPos] =
// [7_______]
// [______________________________0]
((((long)in[ 3 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in[ 4 + inPos]) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in[ 5 + inPos]) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in[ 6 + inPos]) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in[ 7 + inPos]) << 25) & 2147483647L);
out[ 2 + outPos] =
// [76______]
// [_____________________________10]
((((long)in[ 7 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in[ 8 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in[ 9 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in[10 + inPos]) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in[11 + inPos]) << 26) & 2147483647L);
out[ 3 + outPos] =
// [765_____]
// [____________________________210]
((((long)in[11 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in[12 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in[13 + inPos]) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in[14 + inPos]) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in[15 + inPos]) << 27) & 2147483647L);
out[ 4 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in[15 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in[16 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in[17 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in[18 + inPos]) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in[19 + inPos]) << 28) & 2147483647L);
out[ 5 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in[19 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in[20 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in[21 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in[22 + inPos]) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in[23 + inPos]) << 29) & 2147483647L);
out[ 6 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in[23 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in[24 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in[25 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in[26 + inPos]) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in[27 + inPos]) << 30) & 2147483647L);
out[ 7 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in[27 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in[28 + inPos]) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in[29 + inPos]) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in[30 + inPos]) << 23) & 2147483647L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 2147483647L);
out[ 1 + outPos] =
// [7_______]
// [______________________________0]
((((long)in.get( 3 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in.get( 4 + inPos)) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in.get( 5 + inPos)) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in.get( 6 + inPos)) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in.get( 7 + inPos)) << 25) & 2147483647L);
out[ 2 + outPos] =
// [76______]
// [_____________________________10]
((((long)in.get( 7 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in.get( 8 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in.get( 9 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in.get(10 + inPos)) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in.get(11 + inPos)) << 26) & 2147483647L);
out[ 3 + outPos] =
// [765_____]
// [____________________________210]
((((long)in.get(11 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in.get(12 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in.get(13 + inPos)) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in.get(14 + inPos)) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in.get(15 + inPos)) << 27) & 2147483647L);
out[ 4 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in.get(15 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in.get(16 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in.get(17 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in.get(18 + inPos)) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in.get(19 + inPos)) << 28) & 2147483647L);
out[ 5 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in.get(19 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in.get(20 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in.get(21 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in.get(22 + inPos)) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in.get(23 + inPos)) << 29) & 2147483647L);
out[ 6 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in.get(23 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in.get(24 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in.get(25 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in.get(26 + inPos)) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in.get(27 + inPos)) << 30) & 2147483647L);
out[ 7 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in.get(27 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in.get(28 + inPos)) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in.get(29 + inPos)) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in.get(30 + inPos)) << 23) & 2147483647L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in[ 3 + inPos]) << 24) & 2147483647L);
out[ 1 + outPos] =
// [7_______]
// [______________________________0]
((((long)in[ 3 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in[ 4 + inPos]) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in[ 5 + inPos]) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in[ 6 + inPos]) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in[ 7 + inPos]) << 25) & 2147483647L);
out[ 2 + outPos] =
// [76______]
// [_____________________________10]
((((long)in[ 7 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in[ 8 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in[ 9 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in[10 + inPos]) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in[11 + inPos]) << 26) & 2147483647L);
out[ 3 + outPos] =
// [765_____]
// [____________________________210]
((((long)in[11 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in[12 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in[13 + inPos]) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in[14 + inPos]) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in[15 + inPos]) << 27) & 2147483647L);
out[ 4 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in[15 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in[16 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in[17 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in[18 + inPos]) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in[19 + inPos]) << 28) & 2147483647L);
out[ 5 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in[19 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in[20 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in[21 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in[22 + inPos]) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in[23 + inPos]) << 29) & 2147483647L);
out[ 6 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in[23 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in[24 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in[25 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in[26 + inPos]) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in[27 + inPos]) << 30) & 2147483647L);
out[ 7 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in[27 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in[28 + inPos]) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in[29 + inPos]) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in[30 + inPos]) << 23) & 2147483647L);
out[ 8 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in[31 + inPos]) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in[32 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in[33 + inPos]) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in[34 + inPos]) << 24) & 2147483647L);
out[ 9 + outPos] =
// [7_______]
// [______________________________0]
((((long)in[34 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in[35 + inPos]) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in[36 + inPos]) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in[37 + inPos]) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in[38 + inPos]) << 25) & 2147483647L);
out[10 + outPos] =
// [76______]
// [_____________________________10]
((((long)in[38 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in[39 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in[40 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in[41 + inPos]) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in[42 + inPos]) << 26) & 2147483647L);
out[11 + outPos] =
// [765_____]
// [____________________________210]
((((long)in[42 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in[43 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in[44 + inPos]) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in[45 + inPos]) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in[46 + inPos]) << 27) & 2147483647L);
out[12 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in[46 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in[47 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in[48 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in[49 + inPos]) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in[50 + inPos]) << 28) & 2147483647L);
out[13 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in[50 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in[51 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in[52 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in[53 + inPos]) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in[54 + inPos]) << 29) & 2147483647L);
out[14 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in[54 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in[55 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in[56 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in[57 + inPos]) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in[58 + inPos]) << 30) & 2147483647L);
out[15 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in[58 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in[59 + inPos]) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in[60 + inPos]) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in[61 + inPos]) << 23) & 2147483647L);
out[16 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in[62 + inPos]) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in[63 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in[64 + inPos]) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in[65 + inPos]) << 24) & 2147483647L);
out[17 + outPos] =
// [7_______]
// [______________________________0]
((((long)in[65 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in[66 + inPos]) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in[67 + inPos]) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in[68 + inPos]) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in[69 + inPos]) << 25) & 2147483647L);
out[18 + outPos] =
// [76______]
// [_____________________________10]
((((long)in[69 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in[70 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in[71 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in[72 + inPos]) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in[73 + inPos]) << 26) & 2147483647L);
out[19 + outPos] =
// [765_____]
// [____________________________210]
((((long)in[73 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in[74 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in[75 + inPos]) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in[76 + inPos]) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in[77 + inPos]) << 27) & 2147483647L);
out[20 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in[77 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in[78 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in[79 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in[80 + inPos]) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in[81 + inPos]) << 28) & 2147483647L);
out[21 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in[81 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in[82 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in[83 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in[84 + inPos]) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in[85 + inPos]) << 29) & 2147483647L);
out[22 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in[85 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in[86 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in[87 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in[88 + inPos]) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in[89 + inPos]) << 30) & 2147483647L);
out[23 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in[89 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in[90 + inPos]) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in[91 + inPos]) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in[92 + inPos]) << 23) & 2147483647L);
out[24 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in[93 + inPos]) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in[94 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in[95 + inPos]) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in[96 + inPos]) << 24) & 2147483647L);
out[25 + outPos] =
// [7_______]
// [______________________________0]
((((long)in[96 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in[97 + inPos]) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in[98 + inPos]) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in[99 + inPos]) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in[100 + inPos]) << 25) & 2147483647L);
out[26 + outPos] =
// [76______]
// [_____________________________10]
((((long)in[100 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in[101 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in[102 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in[103 + inPos]) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in[104 + inPos]) << 26) & 2147483647L);
out[27 + outPos] =
// [765_____]
// [____________________________210]
((((long)in[104 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in[105 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in[106 + inPos]) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in[107 + inPos]) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in[108 + inPos]) << 27) & 2147483647L);
out[28 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in[108 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in[109 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in[110 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in[111 + inPos]) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in[112 + inPos]) << 28) & 2147483647L);
out[29 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in[112 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in[113 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in[114 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in[115 + inPos]) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in[116 + inPos]) << 29) & 2147483647L);
out[30 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in[116 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in[117 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in[118 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in[119 + inPos]) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in[120 + inPos]) << 30) & 2147483647L);
out[31 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in[120 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in[121 + inPos]) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in[122 + inPos]) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in[123 + inPos]) << 23) & 2147483647L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 2147483647L);
out[ 1 + outPos] =
// [7_______]
// [______________________________0]
((((long)in.get( 3 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in.get( 4 + inPos)) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in.get( 5 + inPos)) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in.get( 6 + inPos)) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in.get( 7 + inPos)) << 25) & 2147483647L);
out[ 2 + outPos] =
// [76______]
// [_____________________________10]
((((long)in.get( 7 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in.get( 8 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in.get( 9 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in.get(10 + inPos)) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in.get(11 + inPos)) << 26) & 2147483647L);
out[ 3 + outPos] =
// [765_____]
// [____________________________210]
((((long)in.get(11 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in.get(12 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in.get(13 + inPos)) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in.get(14 + inPos)) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in.get(15 + inPos)) << 27) & 2147483647L);
out[ 4 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in.get(15 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in.get(16 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in.get(17 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in.get(18 + inPos)) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in.get(19 + inPos)) << 28) & 2147483647L);
out[ 5 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in.get(19 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in.get(20 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in.get(21 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in.get(22 + inPos)) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in.get(23 + inPos)) << 29) & 2147483647L);
out[ 6 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in.get(23 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in.get(24 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in.get(25 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in.get(26 + inPos)) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in.get(27 + inPos)) << 30) & 2147483647L);
out[ 7 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in.get(27 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in.get(28 + inPos)) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in.get(29 + inPos)) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in.get(30 + inPos)) << 23) & 2147483647L);
out[ 8 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in.get(31 + inPos)) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in.get(32 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in.get(33 + inPos)) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in.get(34 + inPos)) << 24) & 2147483647L);
out[ 9 + outPos] =
// [7_______]
// [______________________________0]
((((long)in.get(34 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in.get(35 + inPos)) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in.get(36 + inPos)) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in.get(37 + inPos)) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in.get(38 + inPos)) << 25) & 2147483647L);
out[10 + outPos] =
// [76______]
// [_____________________________10]
((((long)in.get(38 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in.get(39 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in.get(40 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in.get(41 + inPos)) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in.get(42 + inPos)) << 26) & 2147483647L);
out[11 + outPos] =
// [765_____]
// [____________________________210]
((((long)in.get(42 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in.get(43 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in.get(44 + inPos)) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in.get(45 + inPos)) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in.get(46 + inPos)) << 27) & 2147483647L);
out[12 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in.get(46 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in.get(47 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in.get(48 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in.get(49 + inPos)) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in.get(50 + inPos)) << 28) & 2147483647L);
out[13 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in.get(50 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in.get(51 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in.get(52 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in.get(53 + inPos)) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in.get(54 + inPos)) << 29) & 2147483647L);
out[14 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in.get(54 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in.get(55 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in.get(56 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in.get(57 + inPos)) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in.get(58 + inPos)) << 30) & 2147483647L);
out[15 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in.get(58 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in.get(59 + inPos)) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in.get(60 + inPos)) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in.get(61 + inPos)) << 23) & 2147483647L);
out[16 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in.get(62 + inPos)) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in.get(63 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in.get(64 + inPos)) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in.get(65 + inPos)) << 24) & 2147483647L);
out[17 + outPos] =
// [7_______]
// [______________________________0]
((((long)in.get(65 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in.get(66 + inPos)) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in.get(67 + inPos)) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in.get(68 + inPos)) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in.get(69 + inPos)) << 25) & 2147483647L);
out[18 + outPos] =
// [76______]
// [_____________________________10]
((((long)in.get(69 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in.get(70 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in.get(71 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in.get(72 + inPos)) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in.get(73 + inPos)) << 26) & 2147483647L);
out[19 + outPos] =
// [765_____]
// [____________________________210]
((((long)in.get(73 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in.get(74 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in.get(75 + inPos)) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in.get(76 + inPos)) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in.get(77 + inPos)) << 27) & 2147483647L);
out[20 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in.get(77 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in.get(78 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in.get(79 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in.get(80 + inPos)) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in.get(81 + inPos)) << 28) & 2147483647L);
out[21 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in.get(81 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in.get(82 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in.get(83 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in.get(84 + inPos)) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in.get(85 + inPos)) << 29) & 2147483647L);
out[22 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in.get(85 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in.get(86 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in.get(87 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in.get(88 + inPos)) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in.get(89 + inPos)) << 30) & 2147483647L);
out[23 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in.get(89 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in.get(90 + inPos)) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in.get(91 + inPos)) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in.get(92 + inPos)) << 23) & 2147483647L);
out[24 + outPos] =
// [76543210]
// [_______________________76543210]
((((long)in.get(93 + inPos)) ) & 255L)
| // [76543210]
// [_______________54321098________]
((((long)in.get(94 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______32109876________________]
((((long)in.get(95 + inPos)) << 16) & 16777215L)
| // [_6543210]
// [0987654________________________]
((((long)in.get(96 + inPos)) << 24) & 2147483647L);
out[25 + outPos] =
// [7_______]
// [______________________________0]
((((long)in.get(96 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________87654321_]
((((long)in.get(97 + inPos)) << 1) & 511L)
| // [76543210]
// [______________65432109_________]
((((long)in.get(98 + inPos)) << 9) & 131071L)
| // [76543210]
// [______43210987_________________]
((((long)in.get(99 + inPos)) << 17) & 33554431L)
| // [__543210]
// [098765_________________________]
((((long)in.get(100 + inPos)) << 25) & 2147483647L);
out[26 + outPos] =
// [76______]
// [_____________________________10]
((((long)in.get(100 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________98765432__]
((((long)in.get(101 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________76543210__________]
((((long)in.get(102 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____54321098__________________]
((((long)in.get(103 + inPos)) << 18) & 67108863L)
| // [___43210]
// [09876__________________________]
((((long)in.get(104 + inPos)) << 26) & 2147483647L);
out[27 + outPos] =
// [765_____]
// [____________________________210]
((((long)in.get(104 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________09876543___]
((((long)in.get(105 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________87654321___________]
((((long)in.get(106 + inPos)) << 11) & 524287L)
| // [76543210]
// [____65432109___________________]
((((long)in.get(107 + inPos)) << 19) & 134217727L)
| // [____3210]
// [0987___________________________]
((((long)in.get(108 + inPos)) << 27) & 2147483647L);
out[28 + outPos] =
// [7654____]
// [___________________________3210]
((((long)in.get(108 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________10987654____]
((((long)in.get(109 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________98765432____________]
((((long)in.get(110 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___76543210____________________]
((((long)in.get(111 + inPos)) << 20) & 268435455L)
| // [_____210]
// [098____________________________]
((((long)in.get(112 + inPos)) << 28) & 2147483647L);
out[29 + outPos] =
// [76543___]
// [__________________________43210]
((((long)in.get(112 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________21098765_____]
((((long)in.get(113 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________09876543_____________]
((((long)in.get(114 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__87654321_____________________]
((((long)in.get(115 + inPos)) << 21) & 536870911L)
| // [______10]
// [09_____________________________]
((((long)in.get(116 + inPos)) << 29) & 2147483647L);
out[30 + outPos] =
// [765432__]
// [_________________________543210]
((((long)in.get(116 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________32109876______]
((((long)in.get(117 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________10987654______________]
((((long)in.get(118 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_98765432______________________]
((((long)in.get(119 + inPos)) << 22) & 1073741823L)
| // [_______0]
// [0______________________________]
((((long)in.get(120 + inPos)) << 30) & 2147483647L);
out[31 + outPos] =
// [7654321_]
// [________________________6543210]
((((long)in.get(120 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________43210987_______]
((((long)in.get(121 + inPos)) << 7) & 32767L)
| // [76543210]
// [________21098765_______________]
((((long)in.get(122 + inPos)) << 15) & 8388607L)
| // [76543210]
// [09876543_______________________]
((((long)in.get(123 + inPos)) << 23) & 2147483647L);
}
}
private static final class Packer32 extends BytePackerForLong {
private Packer32() {
super(32);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 0 + inPos] & 4294967295L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 0 + inPos] & 4294967295L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 0 + inPos] & 4294967295L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 0 + inPos] & 4294967295L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 1 + inPos] & 4294967295L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 1 + inPos] & 4294967295L) >>> 8)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 1 + inPos] & 4294967295L) >>> 16)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 1 + inPos] & 4294967295L) >>> 24)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 2 + inPos] & 4294967295L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 2 + inPos] & 4294967295L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 2 + inPos] & 4294967295L) >>> 16)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 2 + inPos] & 4294967295L) >>> 24)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 3 + inPos] & 4294967295L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 3 + inPos] & 4294967295L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 3 + inPos] & 4294967295L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 3 + inPos] & 4294967295L) >>> 24)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 4 + inPos] & 4294967295L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 4 + inPos] & 4294967295L) >>> 8)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 4 + inPos] & 4294967295L) >>> 16)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 4 + inPos] & 4294967295L) >>> 24)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 5 + inPos] & 4294967295L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 5 + inPos] & 4294967295L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 5 + inPos] & 4294967295L) >>> 16)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 5 + inPos] & 4294967295L) >>> 24)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 6 + inPos] & 4294967295L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 6 + inPos] & 4294967295L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 6 + inPos] & 4294967295L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 6 + inPos] & 4294967295L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 7 + inPos] & 4294967295L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 7 + inPos] & 4294967295L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 7 + inPos] & 4294967295L) >>> 16)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 7 + inPos] & 4294967295L) >>> 24)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 0 + inPos] & 4294967295L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 0 + inPos] & 4294967295L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 0 + inPos] & 4294967295L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 0 + inPos] & 4294967295L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 1 + inPos] & 4294967295L))) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 1 + inPos] & 4294967295L) >>> 8)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 1 + inPos] & 4294967295L) >>> 16)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 1 + inPos] & 4294967295L) >>> 24)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 2 + inPos] & 4294967295L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 2 + inPos] & 4294967295L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 2 + inPos] & 4294967295L) >>> 16)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 2 + inPos] & 4294967295L) >>> 24)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 3 + inPos] & 4294967295L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 3 + inPos] & 4294967295L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 3 + inPos] & 4294967295L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 3 + inPos] & 4294967295L) >>> 24)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 4 + inPos] & 4294967295L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 4 + inPos] & 4294967295L) >>> 8)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 4 + inPos] & 4294967295L) >>> 16)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 4 + inPos] & 4294967295L) >>> 24)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 5 + inPos] & 4294967295L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 5 + inPos] & 4294967295L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 5 + inPos] & 4294967295L) >>> 16)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 5 + inPos] & 4294967295L) >>> 24)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 6 + inPos] & 4294967295L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 6 + inPos] & 4294967295L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 6 + inPos] & 4294967295L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 6 + inPos] & 4294967295L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 7 + inPos] & 4294967295L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 7 + inPos] & 4294967295L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 7 + inPos] & 4294967295L) >>> 16)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 7 + inPos] & 4294967295L) >>> 24)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 8 + inPos] & 4294967295L))) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 8 + inPos] & 4294967295L) >>> 8)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 8 + inPos] & 4294967295L) >>> 16)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 8 + inPos] & 4294967295L) >>> 24)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[ 9 + inPos] & 4294967295L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[ 9 + inPos] & 4294967295L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[ 9 + inPos] & 4294967295L) >>> 16)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[ 9 + inPos] & 4294967295L) >>> 24)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[10 + inPos] & 4294967295L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[10 + inPos] & 4294967295L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[10 + inPos] & 4294967295L) >>> 16)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[10 + inPos] & 4294967295L) >>> 24)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[11 + inPos] & 4294967295L))) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[11 + inPos] & 4294967295L) >>> 8)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[11 + inPos] & 4294967295L) >>> 16)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[11 + inPos] & 4294967295L) >>> 24)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[12 + inPos] & 4294967295L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[12 + inPos] & 4294967295L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[12 + inPos] & 4294967295L) >>> 16)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[12 + inPos] & 4294967295L) >>> 24)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[13 + inPos] & 4294967295L))) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[13 + inPos] & 4294967295L) >>> 8)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[13 + inPos] & 4294967295L) >>> 16)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[13 + inPos] & 4294967295L) >>> 24)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[14 + inPos] & 4294967295L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[14 + inPos] & 4294967295L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[14 + inPos] & 4294967295L) >>> 16)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[14 + inPos] & 4294967295L) >>> 24)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[15 + inPos] & 4294967295L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[15 + inPos] & 4294967295L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[15 + inPos] & 4294967295L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[15 + inPos] & 4294967295L) >>> 24)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[16 + inPos] & 4294967295L))) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[16 + inPos] & 4294967295L) >>> 8)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[16 + inPos] & 4294967295L) >>> 16)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[16 + inPos] & 4294967295L) >>> 24)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[17 + inPos] & 4294967295L))) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[17 + inPos] & 4294967295L) >>> 8)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[17 + inPos] & 4294967295L) >>> 16)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[17 + inPos] & 4294967295L) >>> 24)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[18 + inPos] & 4294967295L))) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[18 + inPos] & 4294967295L) >>> 8)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[18 + inPos] & 4294967295L) >>> 16)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[18 + inPos] & 4294967295L) >>> 24)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[19 + inPos] & 4294967295L))) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[19 + inPos] & 4294967295L) >>> 8)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[19 + inPos] & 4294967295L) >>> 16)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[19 + inPos] & 4294967295L) >>> 24)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[20 + inPos] & 4294967295L))) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[20 + inPos] & 4294967295L) >>> 8)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[20 + inPos] & 4294967295L) >>> 16)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[20 + inPos] & 4294967295L) >>> 24)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[21 + inPos] & 4294967295L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[21 + inPos] & 4294967295L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[21 + inPos] & 4294967295L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[21 + inPos] & 4294967295L) >>> 24)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[22 + inPos] & 4294967295L))) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[22 + inPos] & 4294967295L) >>> 8)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[22 + inPos] & 4294967295L) >>> 16)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[22 + inPos] & 4294967295L) >>> 24)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[23 + inPos] & 4294967295L))) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[23 + inPos] & 4294967295L) >>> 8)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[23 + inPos] & 4294967295L) >>> 16)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[23 + inPos] & 4294967295L) >>> 24)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[24 + inPos] & 4294967295L))) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[24 + inPos] & 4294967295L) >>> 8)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[24 + inPos] & 4294967295L) >>> 16)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[24 + inPos] & 4294967295L) >>> 24)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[25 + inPos] & 4294967295L))) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[25 + inPos] & 4294967295L) >>> 8)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[25 + inPos] & 4294967295L) >>> 16)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[25 + inPos] & 4294967295L) >>> 24)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[26 + inPos] & 4294967295L))) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[26 + inPos] & 4294967295L) >>> 8)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[26 + inPos] & 4294967295L) >>> 16)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[26 + inPos] & 4294967295L) >>> 24)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[27 + inPos] & 4294967295L))) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[27 + inPos] & 4294967295L) >>> 8)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[27 + inPos] & 4294967295L) >>> 16)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[27 + inPos] & 4294967295L) >>> 24)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[28 + inPos] & 4294967295L))) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[28 + inPos] & 4294967295L) >>> 8)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[28 + inPos] & 4294967295L) >>> 16)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[28 + inPos] & 4294967295L) >>> 24)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[29 + inPos] & 4294967295L))) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[29 + inPos] & 4294967295L) >>> 8)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[29 + inPos] & 4294967295L) >>> 16)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[29 + inPos] & 4294967295L) >>> 24)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[30 + inPos] & 4294967295L))) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[30 + inPos] & 4294967295L) >>> 8)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[30 + inPos] & 4294967295L) >>> 16)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[30 + inPos] & 4294967295L) >>> 24)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________________________76543210]
((in[31 + inPos] & 4294967295L))) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [________________54321098________]
((in[31 + inPos] & 4294967295L) >>> 8)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________32109876________________]
((in[31 + inPos] & 4294967295L) >>> 16)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [10987654________________________]
((in[31 + inPos] & 4294967295L) >>> 24)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L);
out[ 1 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 4 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 5 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[ 6 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[ 7 + inPos]) << 24) & 4294967295L);
out[ 2 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[10 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[11 + inPos]) << 24) & 4294967295L);
out[ 3 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[15 + inPos]) << 24) & 4294967295L);
out[ 4 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[16 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[17 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[18 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[19 + inPos]) << 24) & 4294967295L);
out[ 5 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[21 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[22 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[23 + inPos]) << 24) & 4294967295L);
out[ 6 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L);
out[ 7 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[29 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[30 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[31 + inPos]) << 24) & 4294967295L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L);
out[ 1 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 4 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 5 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get( 6 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get( 7 + inPos)) << 24) & 4294967295L);
out[ 2 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(10 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(11 + inPos)) << 24) & 4294967295L);
out[ 3 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(15 + inPos)) << 24) & 4294967295L);
out[ 4 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(16 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(17 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(18 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(19 + inPos)) << 24) & 4294967295L);
out[ 5 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(22 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(23 + inPos)) << 24) & 4294967295L);
out[ 6 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L);
out[ 7 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(30 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(31 + inPos)) << 24) & 4294967295L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L);
out[ 1 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 4 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 5 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[ 6 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[ 7 + inPos]) << 24) & 4294967295L);
out[ 2 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[10 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[11 + inPos]) << 24) & 4294967295L);
out[ 3 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[15 + inPos]) << 24) & 4294967295L);
out[ 4 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[16 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[17 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[18 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[19 + inPos]) << 24) & 4294967295L);
out[ 5 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[21 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[22 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[23 + inPos]) << 24) & 4294967295L);
out[ 6 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L);
out[ 7 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[29 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[30 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[31 + inPos]) << 24) & 4294967295L);
out[ 8 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[32 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[33 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[34 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[35 + inPos]) << 24) & 4294967295L);
out[ 9 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[38 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[39 + inPos]) << 24) & 4294967295L);
out[10 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[41 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[42 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[43 + inPos]) << 24) & 4294967295L);
out[11 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[44 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[45 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[46 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[47 + inPos]) << 24) & 4294967295L);
out[12 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[49 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[50 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[51 + inPos]) << 24) & 4294967295L);
out[13 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[52 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[53 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[54 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[55 + inPos]) << 24) & 4294967295L);
out[14 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[57 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[58 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[59 + inPos]) << 24) & 4294967295L);
out[15 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[63 + inPos]) << 24) & 4294967295L);
out[16 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[64 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[65 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[66 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[67 + inPos]) << 24) & 4294967295L);
out[17 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[68 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[69 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[70 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[71 + inPos]) << 24) & 4294967295L);
out[18 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[72 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[73 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[74 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[75 + inPos]) << 24) & 4294967295L);
out[19 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[76 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[77 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[78 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[79 + inPos]) << 24) & 4294967295L);
out[20 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[80 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[81 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[82 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[83 + inPos]) << 24) & 4294967295L);
out[21 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[87 + inPos]) << 24) & 4294967295L);
out[22 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[88 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[89 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[90 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[91 + inPos]) << 24) & 4294967295L);
out[23 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[92 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[93 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[94 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[95 + inPos]) << 24) & 4294967295L);
out[24 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[96 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[97 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[98 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[99 + inPos]) << 24) & 4294967295L);
out[25 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[100 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[101 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[102 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[103 + inPos]) << 24) & 4294967295L);
out[26 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[104 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[105 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[106 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[107 + inPos]) << 24) & 4294967295L);
out[27 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[108 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[109 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[110 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[111 + inPos]) << 24) & 4294967295L);
out[28 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[112 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[113 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[114 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[115 + inPos]) << 24) & 4294967295L);
out[29 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[116 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[117 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[118 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[119 + inPos]) << 24) & 4294967295L);
out[30 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[120 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[121 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[122 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[123 + inPos]) << 24) & 4294967295L);
out[31 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in[124 + inPos]) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in[125 + inPos]) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in[126 + inPos]) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in[127 + inPos]) << 24) & 4294967295L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L);
out[ 1 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 4 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 5 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get( 6 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get( 7 + inPos)) << 24) & 4294967295L);
out[ 2 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(10 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(11 + inPos)) << 24) & 4294967295L);
out[ 3 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(15 + inPos)) << 24) & 4294967295L);
out[ 4 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(16 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(17 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(18 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(19 + inPos)) << 24) & 4294967295L);
out[ 5 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(22 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(23 + inPos)) << 24) & 4294967295L);
out[ 6 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L);
out[ 7 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(30 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(31 + inPos)) << 24) & 4294967295L);
out[ 8 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(32 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(33 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(34 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(35 + inPos)) << 24) & 4294967295L);
out[ 9 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(38 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(39 + inPos)) << 24) & 4294967295L);
out[10 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(42 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(43 + inPos)) << 24) & 4294967295L);
out[11 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(44 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(45 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(46 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(47 + inPos)) << 24) & 4294967295L);
out[12 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(50 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(51 + inPos)) << 24) & 4294967295L);
out[13 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(52 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(53 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(54 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(55 + inPos)) << 24) & 4294967295L);
out[14 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(58 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(59 + inPos)) << 24) & 4294967295L);
out[15 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(63 + inPos)) << 24) & 4294967295L);
out[16 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(64 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(65 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(66 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(67 + inPos)) << 24) & 4294967295L);
out[17 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(68 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(69 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(70 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(71 + inPos)) << 24) & 4294967295L);
out[18 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(72 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(73 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(74 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(75 + inPos)) << 24) & 4294967295L);
out[19 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(76 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(77 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(78 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(79 + inPos)) << 24) & 4294967295L);
out[20 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(80 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(81 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(82 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(83 + inPos)) << 24) & 4294967295L);
out[21 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(87 + inPos)) << 24) & 4294967295L);
out[22 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(88 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(89 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(90 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(91 + inPos)) << 24) & 4294967295L);
out[23 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(92 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(93 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(94 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(95 + inPos)) << 24) & 4294967295L);
out[24 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(96 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(97 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(98 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(99 + inPos)) << 24) & 4294967295L);
out[25 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(100 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(101 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(102 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(103 + inPos)) << 24) & 4294967295L);
out[26 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(104 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(105 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(106 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(107 + inPos)) << 24) & 4294967295L);
out[27 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(108 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(109 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(110 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(111 + inPos)) << 24) & 4294967295L);
out[28 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(112 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(113 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(114 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(115 + inPos)) << 24) & 4294967295L);
out[29 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(116 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(117 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(118 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(119 + inPos)) << 24) & 4294967295L);
out[30 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(120 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(121 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(122 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(123 + inPos)) << 24) & 4294967295L);
out[31 + outPos] =
// [76543210]
// [________________________76543210]
((((long)in.get(124 + inPos)) ) & 255L)
| // [76543210]
// [________________54321098________]
((((long)in.get(125 + inPos)) << 8) & 65535L)
| // [76543210]
// [________32109876________________]
((((long)in.get(126 + inPos)) << 16) & 16777215L)
| // [76543210]
// [10987654________________________]
((((long)in.get(127 + inPos)) << 24) & 4294967295L);
}
}
private static final class Packer33 extends BytePackerForLong {
private Packer33() {
super(33);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________76543210]
((in[ 0 + inPos] & 8589934591L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________54321098________]
((in[ 0 + inPos] & 8589934591L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________32109876________________]
((in[ 0 + inPos] & 8589934591L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_10987654________________________]
((in[ 0 + inPos] & 8589934591L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_______0]
// [2________________________________]
((in[ 0 + inPos] & 8589934591L) >>> 32)
| // [7654321_]
// [__________________________6543210]
((in[ 1 + inPos] & 8589934591L) << 1)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________________43210987_______]
((in[ 1 + inPos] & 8589934591L) >>> 7)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________21098765_______________]
((in[ 1 + inPos] & 8589934591L) >>> 15)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__09876543_______________________]
((in[ 1 + inPos] & 8589934591L) >>> 23)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [21_______________________________]
((in[ 1 + inPos] & 8589934591L) >>> 31)
| // [765432__]
// [___________________________543210]
((in[ 2 + inPos] & 8589934591L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [___________________32109876______]
((in[ 2 + inPos] & 8589934591L) >>> 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [___________10987654______________]
((in[ 2 + inPos] & 8589934591L) >>> 14)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [___98765432______________________]
((in[ 2 + inPos] & 8589934591L) >>> 22)) & 255);
out[12 + outPos] = (byte)((
// [_____210]
// [210______________________________]
((in[ 2 + inPos] & 8589934591L) >>> 30)
| // [76543___]
// [____________________________43210]
((in[ 3 + inPos] & 8589934591L) << 3)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________21098765_____]
((in[ 3 + inPos] & 8589934591L) >>> 5)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________09876543_____________]
((in[ 3 + inPos] & 8589934591L) >>> 13)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____87654321_____________________]
((in[ 3 + inPos] & 8589934591L) >>> 21)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [2109_____________________________]
((in[ 3 + inPos] & 8589934591L) >>> 29)
| // [7654____]
// [_____________________________3210]
((in[ 4 + inPos] & 8589934591L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________10987654____]
((in[ 4 + inPos] & 8589934591L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________98765432____________]
((in[ 4 + inPos] & 8589934591L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____76543210____________________]
((in[ 4 + inPos] & 8589934591L) >>> 20)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [21098____________________________]
((in[ 4 + inPos] & 8589934591L) >>> 28)
| // [765_____]
// [______________________________210]
((in[ 5 + inPos] & 8589934591L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______________________09876543___]
((in[ 5 + inPos] & 8589934591L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______________87654321___________]
((in[ 5 + inPos] & 8589934591L) >>> 11)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______65432109___________________]
((in[ 5 + inPos] & 8589934591L) >>> 19)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [210987___________________________]
((in[ 5 + inPos] & 8589934591L) >>> 27)
| // [76______]
// [_______________________________10]
((in[ 6 + inPos] & 8589934591L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_______________________98765432__]
((in[ 6 + inPos] & 8589934591L) >>> 2)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_______________76543210__________]
((in[ 6 + inPos] & 8589934591L) >>> 10)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_______54321098__________________]
((in[ 6 + inPos] & 8589934591L) >>> 18)) & 255);
out[28 + outPos] = (byte)((
// [_6543210]
// [2109876__________________________]
((in[ 6 + inPos] & 8589934591L) >>> 26)
| // [7_______]
// [________________________________0]
((in[ 7 + inPos] & 8589934591L) << 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________87654321_]
((in[ 7 + inPos] & 8589934591L) >>> 1)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________65432109_________]
((in[ 7 + inPos] & 8589934591L) >>> 9)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________43210987_________________]
((in[ 7 + inPos] & 8589934591L) >>> 17)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [21098765_________________________]
((in[ 7 + inPos] & 8589934591L) >>> 25)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________76543210]
((in[ 0 + inPos] & 8589934591L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________54321098________]
((in[ 0 + inPos] & 8589934591L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________32109876________________]
((in[ 0 + inPos] & 8589934591L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_10987654________________________]
((in[ 0 + inPos] & 8589934591L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_______0]
// [2________________________________]
((in[ 0 + inPos] & 8589934591L) >>> 32)
| // [7654321_]
// [__________________________6543210]
((in[ 1 + inPos] & 8589934591L) << 1)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________________43210987_______]
((in[ 1 + inPos] & 8589934591L) >>> 7)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________21098765_______________]
((in[ 1 + inPos] & 8589934591L) >>> 15)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__09876543_______________________]
((in[ 1 + inPos] & 8589934591L) >>> 23)) & 255);
out[ 8 + outPos] = (byte)((
// [______10]
// [21_______________________________]
((in[ 1 + inPos] & 8589934591L) >>> 31)
| // [765432__]
// [___________________________543210]
((in[ 2 + inPos] & 8589934591L) << 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [___________________32109876______]
((in[ 2 + inPos] & 8589934591L) >>> 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [___________10987654______________]
((in[ 2 + inPos] & 8589934591L) >>> 14)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [___98765432______________________]
((in[ 2 + inPos] & 8589934591L) >>> 22)) & 255);
out[12 + outPos] = (byte)((
// [_____210]
// [210______________________________]
((in[ 2 + inPos] & 8589934591L) >>> 30)
| // [76543___]
// [____________________________43210]
((in[ 3 + inPos] & 8589934591L) << 3)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________21098765_____]
((in[ 3 + inPos] & 8589934591L) >>> 5)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________09876543_____________]
((in[ 3 + inPos] & 8589934591L) >>> 13)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____87654321_____________________]
((in[ 3 + inPos] & 8589934591L) >>> 21)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [2109_____________________________]
((in[ 3 + inPos] & 8589934591L) >>> 29)
| // [7654____]
// [_____________________________3210]
((in[ 4 + inPos] & 8589934591L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________10987654____]
((in[ 4 + inPos] & 8589934591L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________98765432____________]
((in[ 4 + inPos] & 8589934591L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____76543210____________________]
((in[ 4 + inPos] & 8589934591L) >>> 20)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [21098____________________________]
((in[ 4 + inPos] & 8589934591L) >>> 28)
| // [765_____]
// [______________________________210]
((in[ 5 + inPos] & 8589934591L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______________________09876543___]
((in[ 5 + inPos] & 8589934591L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______________87654321___________]
((in[ 5 + inPos] & 8589934591L) >>> 11)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______65432109___________________]
((in[ 5 + inPos] & 8589934591L) >>> 19)) & 255);
out[24 + outPos] = (byte)((
// [__543210]
// [210987___________________________]
((in[ 5 + inPos] & 8589934591L) >>> 27)
| // [76______]
// [_______________________________10]
((in[ 6 + inPos] & 8589934591L) << 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_______________________98765432__]
((in[ 6 + inPos] & 8589934591L) >>> 2)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_______________76543210__________]
((in[ 6 + inPos] & 8589934591L) >>> 10)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_______54321098__________________]
((in[ 6 + inPos] & 8589934591L) >>> 18)) & 255);
out[28 + outPos] = (byte)((
// [_6543210]
// [2109876__________________________]
((in[ 6 + inPos] & 8589934591L) >>> 26)
| // [7_______]
// [________________________________0]
((in[ 7 + inPos] & 8589934591L) << 7)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________87654321_]
((in[ 7 + inPos] & 8589934591L) >>> 1)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________65432109_________]
((in[ 7 + inPos] & 8589934591L) >>> 9)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________43210987_________________]
((in[ 7 + inPos] & 8589934591L) >>> 17)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [21098765_________________________]
((in[ 7 + inPos] & 8589934591L) >>> 25)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_________________________76543210]
((in[ 8 + inPos] & 8589934591L))) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_________________54321098________]
((in[ 8 + inPos] & 8589934591L) >>> 8)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_________32109876________________]
((in[ 8 + inPos] & 8589934591L) >>> 16)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_10987654________________________]
((in[ 8 + inPos] & 8589934591L) >>> 24)) & 255);
out[37 + outPos] = (byte)((
// [_______0]
// [2________________________________]
((in[ 8 + inPos] & 8589934591L) >>> 32)
| // [7654321_]
// [__________________________6543210]
((in[ 9 + inPos] & 8589934591L) << 1)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________43210987_______]
((in[ 9 + inPos] & 8589934591L) >>> 7)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________21098765_______________]
((in[ 9 + inPos] & 8589934591L) >>> 15)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__09876543_______________________]
((in[ 9 + inPos] & 8589934591L) >>> 23)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [21_______________________________]
((in[ 9 + inPos] & 8589934591L) >>> 31)
| // [765432__]
// [___________________________543210]
((in[10 + inPos] & 8589934591L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [___________________32109876______]
((in[10 + inPos] & 8589934591L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [___________10987654______________]
((in[10 + inPos] & 8589934591L) >>> 14)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [___98765432______________________]
((in[10 + inPos] & 8589934591L) >>> 22)) & 255);
out[45 + outPos] = (byte)((
// [_____210]
// [210______________________________]
((in[10 + inPos] & 8589934591L) >>> 30)
| // [76543___]
// [____________________________43210]
((in[11 + inPos] & 8589934591L) << 3)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____________________21098765_____]
((in[11 + inPos] & 8589934591L) >>> 5)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________09876543_____________]
((in[11 + inPos] & 8589934591L) >>> 13)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____87654321_____________________]
((in[11 + inPos] & 8589934591L) >>> 21)) & 255);
out[49 + outPos] = (byte)((
// [____3210]
// [2109_____________________________]
((in[11 + inPos] & 8589934591L) >>> 29)
| // [7654____]
// [_____________________________3210]
((in[12 + inPos] & 8589934591L) << 4)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_____________________10987654____]
((in[12 + inPos] & 8589934591L) >>> 4)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_____________98765432____________]
((in[12 + inPos] & 8589934591L) >>> 12)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_____76543210____________________]
((in[12 + inPos] & 8589934591L) >>> 20)) & 255);
out[53 + outPos] = (byte)((
// [___43210]
// [21098____________________________]
((in[12 + inPos] & 8589934591L) >>> 28)
| // [765_____]
// [______________________________210]
((in[13 + inPos] & 8589934591L) << 5)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [______________________09876543___]
((in[13 + inPos] & 8589934591L) >>> 3)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [______________87654321___________]
((in[13 + inPos] & 8589934591L) >>> 11)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______65432109___________________]
((in[13 + inPos] & 8589934591L) >>> 19)) & 255);
out[57 + outPos] = (byte)((
// [__543210]
// [210987___________________________]
((in[13 + inPos] & 8589934591L) >>> 27)
| // [76______]
// [_______________________________10]
((in[14 + inPos] & 8589934591L) << 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_______________________98765432__]
((in[14 + inPos] & 8589934591L) >>> 2)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_______________76543210__________]
((in[14 + inPos] & 8589934591L) >>> 10)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_______54321098__________________]
((in[14 + inPos] & 8589934591L) >>> 18)) & 255);
out[61 + outPos] = (byte)((
// [_6543210]
// [2109876__________________________]
((in[14 + inPos] & 8589934591L) >>> 26)
| // [7_______]
// [________________________________0]
((in[15 + inPos] & 8589934591L) << 7)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________________87654321_]
((in[15 + inPos] & 8589934591L) >>> 1)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________________65432109_________]
((in[15 + inPos] & 8589934591L) >>> 9)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________43210987_________________]
((in[15 + inPos] & 8589934591L) >>> 17)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [21098765_________________________]
((in[15 + inPos] & 8589934591L) >>> 25)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_________________________76543210]
((in[16 + inPos] & 8589934591L))) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_________________54321098________]
((in[16 + inPos] & 8589934591L) >>> 8)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_________32109876________________]
((in[16 + inPos] & 8589934591L) >>> 16)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_10987654________________________]
((in[16 + inPos] & 8589934591L) >>> 24)) & 255);
out[70 + outPos] = (byte)((
// [_______0]
// [2________________________________]
((in[16 + inPos] & 8589934591L) >>> 32)
| // [7654321_]
// [__________________________6543210]
((in[17 + inPos] & 8589934591L) << 1)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__________________43210987_______]
((in[17 + inPos] & 8589934591L) >>> 7)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________21098765_______________]
((in[17 + inPos] & 8589934591L) >>> 15)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__09876543_______________________]
((in[17 + inPos] & 8589934591L) >>> 23)) & 255);
out[74 + outPos] = (byte)((
// [______10]
// [21_______________________________]
((in[17 + inPos] & 8589934591L) >>> 31)
| // [765432__]
// [___________________________543210]
((in[18 + inPos] & 8589934591L) << 2)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [___________________32109876______]
((in[18 + inPos] & 8589934591L) >>> 6)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [___________10987654______________]
((in[18 + inPos] & 8589934591L) >>> 14)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [___98765432______________________]
((in[18 + inPos] & 8589934591L) >>> 22)) & 255);
out[78 + outPos] = (byte)((
// [_____210]
// [210______________________________]
((in[18 + inPos] & 8589934591L) >>> 30)
| // [76543___]
// [____________________________43210]
((in[19 + inPos] & 8589934591L) << 3)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________21098765_____]
((in[19 + inPos] & 8589934591L) >>> 5)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________09876543_____________]
((in[19 + inPos] & 8589934591L) >>> 13)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____87654321_____________________]
((in[19 + inPos] & 8589934591L) >>> 21)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [2109_____________________________]
((in[19 + inPos] & 8589934591L) >>> 29)
| // [7654____]
// [_____________________________3210]
((in[20 + inPos] & 8589934591L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [_____________________10987654____]
((in[20 + inPos] & 8589934591L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_____________98765432____________]
((in[20 + inPos] & 8589934591L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_____76543210____________________]
((in[20 + inPos] & 8589934591L) >>> 20)) & 255);
out[86 + outPos] = (byte)((
// [___43210]
// [21098____________________________]
((in[20 + inPos] & 8589934591L) >>> 28)
| // [765_____]
// [______________________________210]
((in[21 + inPos] & 8589934591L) << 5)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [______________________09876543___]
((in[21 + inPos] & 8589934591L) >>> 3)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [______________87654321___________]
((in[21 + inPos] & 8589934591L) >>> 11)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [______65432109___________________]
((in[21 + inPos] & 8589934591L) >>> 19)) & 255);
out[90 + outPos] = (byte)((
// [__543210]
// [210987___________________________]
((in[21 + inPos] & 8589934591L) >>> 27)
| // [76______]
// [_______________________________10]
((in[22 + inPos] & 8589934591L) << 6)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_______________________98765432__]
((in[22 + inPos] & 8589934591L) >>> 2)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [_______________76543210__________]
((in[22 + inPos] & 8589934591L) >>> 10)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_______54321098__________________]
((in[22 + inPos] & 8589934591L) >>> 18)) & 255);
out[94 + outPos] = (byte)((
// [_6543210]
// [2109876__________________________]
((in[22 + inPos] & 8589934591L) >>> 26)
| // [7_______]
// [________________________________0]
((in[23 + inPos] & 8589934591L) << 7)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________________87654321_]
((in[23 + inPos] & 8589934591L) >>> 1)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________65432109_________]
((in[23 + inPos] & 8589934591L) >>> 9)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________43210987_________________]
((in[23 + inPos] & 8589934591L) >>> 17)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [21098765_________________________]
((in[23 + inPos] & 8589934591L) >>> 25)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [_________________________76543210]
((in[24 + inPos] & 8589934591L))) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [_________________54321098________]
((in[24 + inPos] & 8589934591L) >>> 8)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_________32109876________________]
((in[24 + inPos] & 8589934591L) >>> 16)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_10987654________________________]
((in[24 + inPos] & 8589934591L) >>> 24)) & 255);
out[103 + outPos] = (byte)((
// [_______0]
// [2________________________________]
((in[24 + inPos] & 8589934591L) >>> 32)
| // [7654321_]
// [__________________________6543210]
((in[25 + inPos] & 8589934591L) << 1)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________________43210987_______]
((in[25 + inPos] & 8589934591L) >>> 7)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________21098765_______________]
((in[25 + inPos] & 8589934591L) >>> 15)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__09876543_______________________]
((in[25 + inPos] & 8589934591L) >>> 23)) & 255);
out[107 + outPos] = (byte)((
// [______10]
// [21_______________________________]
((in[25 + inPos] & 8589934591L) >>> 31)
| // [765432__]
// [___________________________543210]
((in[26 + inPos] & 8589934591L) << 2)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [___________________32109876______]
((in[26 + inPos] & 8589934591L) >>> 6)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [___________10987654______________]
((in[26 + inPos] & 8589934591L) >>> 14)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [___98765432______________________]
((in[26 + inPos] & 8589934591L) >>> 22)) & 255);
out[111 + outPos] = (byte)((
// [_____210]
// [210______________________________]
((in[26 + inPos] & 8589934591L) >>> 30)
| // [76543___]
// [____________________________43210]
((in[27 + inPos] & 8589934591L) << 3)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [____________________21098765_____]
((in[27 + inPos] & 8589934591L) >>> 5)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [____________09876543_____________]
((in[27 + inPos] & 8589934591L) >>> 13)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [____87654321_____________________]
((in[27 + inPos] & 8589934591L) >>> 21)) & 255);
out[115 + outPos] = (byte)((
// [____3210]
// [2109_____________________________]
((in[27 + inPos] & 8589934591L) >>> 29)
| // [7654____]
// [_____________________________3210]
((in[28 + inPos] & 8589934591L) << 4)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_____________________10987654____]
((in[28 + inPos] & 8589934591L) >>> 4)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_____________98765432____________]
((in[28 + inPos] & 8589934591L) >>> 12)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [_____76543210____________________]
((in[28 + inPos] & 8589934591L) >>> 20)) & 255);
out[119 + outPos] = (byte)((
// [___43210]
// [21098____________________________]
((in[28 + inPos] & 8589934591L) >>> 28)
| // [765_____]
// [______________________________210]
((in[29 + inPos] & 8589934591L) << 5)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [______________________09876543___]
((in[29 + inPos] & 8589934591L) >>> 3)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [______________87654321___________]
((in[29 + inPos] & 8589934591L) >>> 11)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [______65432109___________________]
((in[29 + inPos] & 8589934591L) >>> 19)) & 255);
out[123 + outPos] = (byte)((
// [__543210]
// [210987___________________________]
((in[29 + inPos] & 8589934591L) >>> 27)
| // [76______]
// [_______________________________10]
((in[30 + inPos] & 8589934591L) << 6)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_______________________98765432__]
((in[30 + inPos] & 8589934591L) >>> 2)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_______________76543210__________]
((in[30 + inPos] & 8589934591L) >>> 10)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_______54321098__________________]
((in[30 + inPos] & 8589934591L) >>> 18)) & 255);
out[127 + outPos] = (byte)((
// [_6543210]
// [2109876__________________________]
((in[30 + inPos] & 8589934591L) >>> 26)
| // [7_______]
// [________________________________0]
((in[31 + inPos] & 8589934591L) << 7)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________87654321_]
((in[31 + inPos] & 8589934591L) >>> 1)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________65432109_________]
((in[31 + inPos] & 8589934591L) >>> 9)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________43210987_________________]
((in[31 + inPos] & 8589934591L) >>> 17)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [21098765_________________________]
((in[31 + inPos] & 8589934591L) >>> 25)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in[ 4 + inPos]) << 32) & 8589934591L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in[ 4 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in[ 5 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in[ 6 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in[ 7 + inPos]) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in[ 8 + inPos]) << 31) & 8589934591L);
out[ 2 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in[ 9 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in[10 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in[11 + inPos]) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in[12 + inPos]) << 30) & 8589934591L);
out[ 3 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in[12 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in[13 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in[14 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in[15 + inPos]) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in[16 + inPos]) << 29) & 8589934591L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in[19 + inPos]) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in[20 + inPos]) << 28) & 8589934591L);
out[ 5 + outPos] =
// [765_____]
// [______________________________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in[21 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in[22 + inPos]) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in[23 + inPos]) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in[24 + inPos]) << 27) & 8589934591L);
out[ 6 + outPos] =
// [76______]
// [_______________________________10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in[25 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in[26 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in[27 + inPos]) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in[28 + inPos]) << 26) & 8589934591L);
out[ 7 + outPos] =
// [7_______]
// [________________________________0]
((((long)in[28 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in[29 + inPos]) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in[30 + inPos]) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in[31 + inPos]) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in[32 + inPos]) << 25) & 8589934591L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in.get( 4 + inPos)) << 32) & 8589934591L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in.get( 4 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in.get( 5 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in.get( 6 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in.get( 7 + inPos)) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in.get( 8 + inPos)) << 31) & 8589934591L);
out[ 2 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in.get( 9 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in.get(10 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in.get(11 + inPos)) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in.get(12 + inPos)) << 30) & 8589934591L);
out[ 3 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in.get(12 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in.get(13 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in.get(14 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in.get(15 + inPos)) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in.get(16 + inPos)) << 29) & 8589934591L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in.get(19 + inPos)) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in.get(20 + inPos)) << 28) & 8589934591L);
out[ 5 + outPos] =
// [765_____]
// [______________________________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in.get(22 + inPos)) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in.get(23 + inPos)) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in.get(24 + inPos)) << 27) & 8589934591L);
out[ 6 + outPos] =
// [76______]
// [_______________________________10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in.get(25 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in.get(26 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in.get(27 + inPos)) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in.get(28 + inPos)) << 26) & 8589934591L);
out[ 7 + outPos] =
// [7_______]
// [________________________________0]
((((long)in.get(28 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in.get(29 + inPos)) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in.get(30 + inPos)) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in.get(31 + inPos)) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in.get(32 + inPos)) << 25) & 8589934591L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in[ 4 + inPos]) << 32) & 8589934591L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in[ 4 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in[ 5 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in[ 6 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in[ 7 + inPos]) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in[ 8 + inPos]) << 31) & 8589934591L);
out[ 2 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in[ 8 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in[ 9 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in[10 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in[11 + inPos]) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in[12 + inPos]) << 30) & 8589934591L);
out[ 3 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in[12 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in[13 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in[14 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in[15 + inPos]) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in[16 + inPos]) << 29) & 8589934591L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in[19 + inPos]) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in[20 + inPos]) << 28) & 8589934591L);
out[ 5 + outPos] =
// [765_____]
// [______________________________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in[21 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in[22 + inPos]) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in[23 + inPos]) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in[24 + inPos]) << 27) & 8589934591L);
out[ 6 + outPos] =
// [76______]
// [_______________________________10]
((((long)in[24 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in[25 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in[26 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in[27 + inPos]) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in[28 + inPos]) << 26) & 8589934591L);
out[ 7 + outPos] =
// [7_______]
// [________________________________0]
((((long)in[28 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in[29 + inPos]) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in[30 + inPos]) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in[31 + inPos]) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in[32 + inPos]) << 25) & 8589934591L);
out[ 8 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in[34 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in[35 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in[36 + inPos]) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in[37 + inPos]) << 32) & 8589934591L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in[37 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in[38 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in[39 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in[40 + inPos]) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in[41 + inPos]) << 31) & 8589934591L);
out[10 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in[43 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in[44 + inPos]) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in[45 + inPos]) << 30) & 8589934591L);
out[11 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in[45 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in[46 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in[47 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in[48 + inPos]) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in[49 + inPos]) << 29) & 8589934591L);
out[12 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in[49 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in[50 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in[51 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in[52 + inPos]) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in[53 + inPos]) << 28) & 8589934591L);
out[13 + outPos] =
// [765_____]
// [______________________________210]
((((long)in[53 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in[54 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in[55 + inPos]) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in[56 + inPos]) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in[57 + inPos]) << 27) & 8589934591L);
out[14 + outPos] =
// [76______]
// [_______________________________10]
((((long)in[57 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in[58 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in[59 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in[60 + inPos]) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in[61 + inPos]) << 26) & 8589934591L);
out[15 + outPos] =
// [7_______]
// [________________________________0]
((((long)in[61 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in[62 + inPos]) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in[63 + inPos]) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in[64 + inPos]) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in[65 + inPos]) << 25) & 8589934591L);
out[16 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in[66 + inPos]) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in[67 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in[68 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in[69 + inPos]) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in[70 + inPos]) << 32) & 8589934591L);
out[17 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in[70 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in[71 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in[72 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in[73 + inPos]) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in[74 + inPos]) << 31) & 8589934591L);
out[18 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in[74 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in[75 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in[76 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in[77 + inPos]) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in[78 + inPos]) << 30) & 8589934591L);
out[19 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in[78 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in[79 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in[80 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in[81 + inPos]) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in[82 + inPos]) << 29) & 8589934591L);
out[20 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in[85 + inPos]) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in[86 + inPos]) << 28) & 8589934591L);
out[21 + outPos] =
// [765_____]
// [______________________________210]
((((long)in[86 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in[87 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in[88 + inPos]) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in[89 + inPos]) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in[90 + inPos]) << 27) & 8589934591L);
out[22 + outPos] =
// [76______]
// [_______________________________10]
((((long)in[90 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in[91 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in[92 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in[93 + inPos]) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in[94 + inPos]) << 26) & 8589934591L);
out[23 + outPos] =
// [7_______]
// [________________________________0]
((((long)in[94 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in[95 + inPos]) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in[96 + inPos]) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in[97 + inPos]) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in[98 + inPos]) << 25) & 8589934591L);
out[24 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in[99 + inPos]) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in[100 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in[101 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in[102 + inPos]) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in[103 + inPos]) << 32) & 8589934591L);
out[25 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in[103 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in[104 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in[105 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in[106 + inPos]) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in[107 + inPos]) << 31) & 8589934591L);
out[26 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in[107 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in[108 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in[109 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in[110 + inPos]) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in[111 + inPos]) << 30) & 8589934591L);
out[27 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in[111 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in[112 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in[113 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in[114 + inPos]) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in[115 + inPos]) << 29) & 8589934591L);
out[28 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in[115 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in[116 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in[117 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in[118 + inPos]) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in[119 + inPos]) << 28) & 8589934591L);
out[29 + outPos] =
// [765_____]
// [______________________________210]
((((long)in[119 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in[120 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in[121 + inPos]) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in[122 + inPos]) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in[123 + inPos]) << 27) & 8589934591L);
out[30 + outPos] =
// [76______]
// [_______________________________10]
((((long)in[123 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in[124 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in[125 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in[126 + inPos]) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in[127 + inPos]) << 26) & 8589934591L);
out[31 + outPos] =
// [7_______]
// [________________________________0]
((((long)in[127 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in[128 + inPos]) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in[129 + inPos]) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in[130 + inPos]) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in[131 + inPos]) << 25) & 8589934591L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in.get( 4 + inPos)) << 32) & 8589934591L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in.get( 4 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in.get( 5 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in.get( 6 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in.get( 7 + inPos)) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in.get( 8 + inPos)) << 31) & 8589934591L);
out[ 2 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in.get( 8 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in.get( 9 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in.get(10 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in.get(11 + inPos)) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in.get(12 + inPos)) << 30) & 8589934591L);
out[ 3 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in.get(12 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in.get(13 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in.get(14 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in.get(15 + inPos)) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in.get(16 + inPos)) << 29) & 8589934591L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in.get(19 + inPos)) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in.get(20 + inPos)) << 28) & 8589934591L);
out[ 5 + outPos] =
// [765_____]
// [______________________________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in.get(22 + inPos)) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in.get(23 + inPos)) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in.get(24 + inPos)) << 27) & 8589934591L);
out[ 6 + outPos] =
// [76______]
// [_______________________________10]
((((long)in.get(24 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in.get(25 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in.get(26 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in.get(27 + inPos)) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in.get(28 + inPos)) << 26) & 8589934591L);
out[ 7 + outPos] =
// [7_______]
// [________________________________0]
((((long)in.get(28 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in.get(29 + inPos)) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in.get(30 + inPos)) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in.get(31 + inPos)) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in.get(32 + inPos)) << 25) & 8589934591L);
out[ 8 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in.get(34 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in.get(35 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in.get(36 + inPos)) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in.get(37 + inPos)) << 32) & 8589934591L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in.get(37 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in.get(38 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in.get(39 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in.get(40 + inPos)) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in.get(41 + inPos)) << 31) & 8589934591L);
out[10 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in.get(43 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in.get(44 + inPos)) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in.get(45 + inPos)) << 30) & 8589934591L);
out[11 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in.get(45 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in.get(46 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in.get(47 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in.get(48 + inPos)) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in.get(49 + inPos)) << 29) & 8589934591L);
out[12 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in.get(49 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in.get(50 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in.get(51 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in.get(52 + inPos)) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in.get(53 + inPos)) << 28) & 8589934591L);
out[13 + outPos] =
// [765_____]
// [______________________________210]
((((long)in.get(53 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in.get(54 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in.get(55 + inPos)) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in.get(56 + inPos)) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in.get(57 + inPos)) << 27) & 8589934591L);
out[14 + outPos] =
// [76______]
// [_______________________________10]
((((long)in.get(57 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in.get(58 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in.get(59 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in.get(60 + inPos)) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in.get(61 + inPos)) << 26) & 8589934591L);
out[15 + outPos] =
// [7_______]
// [________________________________0]
((((long)in.get(61 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in.get(62 + inPos)) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in.get(63 + inPos)) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in.get(64 + inPos)) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in.get(65 + inPos)) << 25) & 8589934591L);
out[16 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in.get(66 + inPos)) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in.get(67 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in.get(68 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in.get(69 + inPos)) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in.get(70 + inPos)) << 32) & 8589934591L);
out[17 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in.get(70 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in.get(71 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in.get(72 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in.get(73 + inPos)) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in.get(74 + inPos)) << 31) & 8589934591L);
out[18 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in.get(74 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in.get(75 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in.get(76 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in.get(77 + inPos)) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in.get(78 + inPos)) << 30) & 8589934591L);
out[19 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in.get(78 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in.get(79 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in.get(80 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in.get(81 + inPos)) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in.get(82 + inPos)) << 29) & 8589934591L);
out[20 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in.get(85 + inPos)) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in.get(86 + inPos)) << 28) & 8589934591L);
out[21 + outPos] =
// [765_____]
// [______________________________210]
((((long)in.get(86 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in.get(87 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in.get(88 + inPos)) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in.get(89 + inPos)) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in.get(90 + inPos)) << 27) & 8589934591L);
out[22 + outPos] =
// [76______]
// [_______________________________10]
((((long)in.get(90 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in.get(91 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in.get(92 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in.get(93 + inPos)) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in.get(94 + inPos)) << 26) & 8589934591L);
out[23 + outPos] =
// [7_______]
// [________________________________0]
((((long)in.get(94 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in.get(95 + inPos)) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in.get(96 + inPos)) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in.get(97 + inPos)) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in.get(98 + inPos)) << 25) & 8589934591L);
out[24 + outPos] =
// [76543210]
// [_________________________76543210]
((((long)in.get(99 + inPos)) ) & 255L)
| // [76543210]
// [_________________54321098________]
((((long)in.get(100 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________32109876________________]
((((long)in.get(101 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_10987654________________________]
((((long)in.get(102 + inPos)) << 24) & 4294967295L)
| // [_______0]
// [2________________________________]
((((long)in.get(103 + inPos)) << 32) & 8589934591L);
out[25 + outPos] =
// [7654321_]
// [__________________________6543210]
((((long)in.get(103 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________43210987_______]
((((long)in.get(104 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________21098765_______________]
((((long)in.get(105 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__09876543_______________________]
((((long)in.get(106 + inPos)) << 23) & 2147483647L)
| // [______10]
// [21_______________________________]
((((long)in.get(107 + inPos)) << 31) & 8589934591L);
out[26 + outPos] =
// [765432__]
// [___________________________543210]
((((long)in.get(107 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________32109876______]
((((long)in.get(108 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________10987654______________]
((((long)in.get(109 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___98765432______________________]
((((long)in.get(110 + inPos)) << 22) & 1073741823L)
| // [_____210]
// [210______________________________]
((((long)in.get(111 + inPos)) << 30) & 8589934591L);
out[27 + outPos] =
// [76543___]
// [____________________________43210]
((((long)in.get(111 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________21098765_____]
((((long)in.get(112 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________09876543_____________]
((((long)in.get(113 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____87654321_____________________]
((((long)in.get(114 + inPos)) << 21) & 536870911L)
| // [____3210]
// [2109_____________________________]
((((long)in.get(115 + inPos)) << 29) & 8589934591L);
out[28 + outPos] =
// [7654____]
// [_____________________________3210]
((((long)in.get(115 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________10987654____]
((((long)in.get(116 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________98765432____________]
((((long)in.get(117 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____76543210____________________]
((((long)in.get(118 + inPos)) << 20) & 268435455L)
| // [___43210]
// [21098____________________________]
((((long)in.get(119 + inPos)) << 28) & 8589934591L);
out[29 + outPos] =
// [765_____]
// [______________________________210]
((((long)in.get(119 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________09876543___]
((((long)in.get(120 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________87654321___________]
((((long)in.get(121 + inPos)) << 11) & 524287L)
| // [76543210]
// [______65432109___________________]
((((long)in.get(122 + inPos)) << 19) & 134217727L)
| // [__543210]
// [210987___________________________]
((((long)in.get(123 + inPos)) << 27) & 8589934591L);
out[30 + outPos] =
// [76______]
// [_______________________________10]
((((long)in.get(123 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________98765432__]
((((long)in.get(124 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________76543210__________]
((((long)in.get(125 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______54321098__________________]
((((long)in.get(126 + inPos)) << 18) & 67108863L)
| // [_6543210]
// [2109876__________________________]
((((long)in.get(127 + inPos)) << 26) & 8589934591L);
out[31 + outPos] =
// [7_______]
// [________________________________0]
((((long)in.get(127 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________87654321_]
((((long)in.get(128 + inPos)) << 1) & 511L)
| // [76543210]
// [________________65432109_________]
((((long)in.get(129 + inPos)) << 9) & 131071L)
| // [76543210]
// [________43210987_________________]
((((long)in.get(130 + inPos)) << 17) & 33554431L)
| // [76543210]
// [21098765_________________________]
((((long)in.get(131 + inPos)) << 25) & 8589934591L);
}
}
private static final class Packer34 extends BytePackerForLong {
private Packer34() {
super(34);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[ 0 + inPos] & 17179869183L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[ 0 + inPos] & 17179869183L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[ 0 + inPos] & 17179869183L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[ 0 + inPos] & 17179869183L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[ 0 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[ 1 + inPos] & 17179869183L) << 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[ 1 + inPos] & 17179869183L) >>> 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[ 1 + inPos] & 17179869183L) >>> 14)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[ 1 + inPos] & 17179869183L) >>> 22)) & 255);
out[ 8 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[ 1 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[ 2 + inPos] & 17179869183L) << 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[ 2 + inPos] & 17179869183L) >>> 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[ 2 + inPos] & 17179869183L) >>> 12)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[ 2 + inPos] & 17179869183L) >>> 20)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[ 2 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[ 3 + inPos] & 17179869183L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[ 3 + inPos] & 17179869183L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[ 3 + inPos] & 17179869183L) >>> 10)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[ 3 + inPos] & 17179869183L) >>> 18)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[ 3 + inPos] & 17179869183L) >>> 26)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[ 4 + inPos] & 17179869183L))) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[ 4 + inPos] & 17179869183L) >>> 8)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[ 4 + inPos] & 17179869183L) >>> 16)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[ 4 + inPos] & 17179869183L) >>> 24)) & 255);
out[21 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[ 4 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[ 5 + inPos] & 17179869183L) << 2)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[ 5 + inPos] & 17179869183L) >>> 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[ 5 + inPos] & 17179869183L) >>> 14)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[ 5 + inPos] & 17179869183L) >>> 22)) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[ 5 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[ 6 + inPos] & 17179869183L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[ 6 + inPos] & 17179869183L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[ 6 + inPos] & 17179869183L) >>> 12)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[ 6 + inPos] & 17179869183L) >>> 20)) & 255);
out[29 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[ 6 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[ 7 + inPos] & 17179869183L) << 6)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[ 7 + inPos] & 17179869183L) >>> 2)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[ 7 + inPos] & 17179869183L) >>> 10)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[ 7 + inPos] & 17179869183L) >>> 18)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[ 7 + inPos] & 17179869183L) >>> 26)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[ 0 + inPos] & 17179869183L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[ 0 + inPos] & 17179869183L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[ 0 + inPos] & 17179869183L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[ 0 + inPos] & 17179869183L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[ 0 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[ 1 + inPos] & 17179869183L) << 2)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[ 1 + inPos] & 17179869183L) >>> 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[ 1 + inPos] & 17179869183L) >>> 14)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[ 1 + inPos] & 17179869183L) >>> 22)) & 255);
out[ 8 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[ 1 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[ 2 + inPos] & 17179869183L) << 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[ 2 + inPos] & 17179869183L) >>> 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[ 2 + inPos] & 17179869183L) >>> 12)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[ 2 + inPos] & 17179869183L) >>> 20)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[ 2 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[ 3 + inPos] & 17179869183L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[ 3 + inPos] & 17179869183L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[ 3 + inPos] & 17179869183L) >>> 10)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[ 3 + inPos] & 17179869183L) >>> 18)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[ 3 + inPos] & 17179869183L) >>> 26)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[ 4 + inPos] & 17179869183L))) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[ 4 + inPos] & 17179869183L) >>> 8)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[ 4 + inPos] & 17179869183L) >>> 16)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[ 4 + inPos] & 17179869183L) >>> 24)) & 255);
out[21 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[ 4 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[ 5 + inPos] & 17179869183L) << 2)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[ 5 + inPos] & 17179869183L) >>> 6)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[ 5 + inPos] & 17179869183L) >>> 14)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[ 5 + inPos] & 17179869183L) >>> 22)) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[ 5 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[ 6 + inPos] & 17179869183L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[ 6 + inPos] & 17179869183L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[ 6 + inPos] & 17179869183L) >>> 12)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[ 6 + inPos] & 17179869183L) >>> 20)) & 255);
out[29 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[ 6 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[ 7 + inPos] & 17179869183L) << 6)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[ 7 + inPos] & 17179869183L) >>> 2)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[ 7 + inPos] & 17179869183L) >>> 10)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[ 7 + inPos] & 17179869183L) >>> 18)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[ 7 + inPos] & 17179869183L) >>> 26)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[ 8 + inPos] & 17179869183L))) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[ 8 + inPos] & 17179869183L) >>> 8)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[ 8 + inPos] & 17179869183L) >>> 16)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[ 8 + inPos] & 17179869183L) >>> 24)) & 255);
out[38 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[ 8 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[ 9 + inPos] & 17179869183L) << 2)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[ 9 + inPos] & 17179869183L) >>> 6)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[ 9 + inPos] & 17179869183L) >>> 14)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[ 9 + inPos] & 17179869183L) >>> 22)) & 255);
out[42 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[ 9 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[10 + inPos] & 17179869183L) << 4)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[10 + inPos] & 17179869183L) >>> 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[10 + inPos] & 17179869183L) >>> 12)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[10 + inPos] & 17179869183L) >>> 20)) & 255);
out[46 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[10 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[11 + inPos] & 17179869183L) << 6)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[11 + inPos] & 17179869183L) >>> 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[11 + inPos] & 17179869183L) >>> 10)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[11 + inPos] & 17179869183L) >>> 18)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[11 + inPos] & 17179869183L) >>> 26)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[12 + inPos] & 17179869183L))) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[12 + inPos] & 17179869183L) >>> 8)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[12 + inPos] & 17179869183L) >>> 16)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[12 + inPos] & 17179869183L) >>> 24)) & 255);
out[55 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[12 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[13 + inPos] & 17179869183L) << 2)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[13 + inPos] & 17179869183L) >>> 6)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[13 + inPos] & 17179869183L) >>> 14)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[13 + inPos] & 17179869183L) >>> 22)) & 255);
out[59 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[13 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[14 + inPos] & 17179869183L) << 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[14 + inPos] & 17179869183L) >>> 4)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[14 + inPos] & 17179869183L) >>> 12)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[14 + inPos] & 17179869183L) >>> 20)) & 255);
out[63 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[14 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[15 + inPos] & 17179869183L) << 6)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[15 + inPos] & 17179869183L) >>> 2)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[15 + inPos] & 17179869183L) >>> 10)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[15 + inPos] & 17179869183L) >>> 18)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[15 + inPos] & 17179869183L) >>> 26)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[16 + inPos] & 17179869183L))) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[16 + inPos] & 17179869183L) >>> 8)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[16 + inPos] & 17179869183L) >>> 16)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[16 + inPos] & 17179869183L) >>> 24)) & 255);
out[72 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[16 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[17 + inPos] & 17179869183L) << 2)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[17 + inPos] & 17179869183L) >>> 6)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[17 + inPos] & 17179869183L) >>> 14)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[17 + inPos] & 17179869183L) >>> 22)) & 255);
out[76 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[17 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[18 + inPos] & 17179869183L) << 4)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[18 + inPos] & 17179869183L) >>> 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[18 + inPos] & 17179869183L) >>> 12)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[18 + inPos] & 17179869183L) >>> 20)) & 255);
out[80 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[18 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[19 + inPos] & 17179869183L) << 6)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[19 + inPos] & 17179869183L) >>> 2)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[19 + inPos] & 17179869183L) >>> 10)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[19 + inPos] & 17179869183L) >>> 18)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[19 + inPos] & 17179869183L) >>> 26)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[20 + inPos] & 17179869183L))) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[20 + inPos] & 17179869183L) >>> 8)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[20 + inPos] & 17179869183L) >>> 16)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[20 + inPos] & 17179869183L) >>> 24)) & 255);
out[89 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[20 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[21 + inPos] & 17179869183L) << 2)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[21 + inPos] & 17179869183L) >>> 6)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[21 + inPos] & 17179869183L) >>> 14)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[21 + inPos] & 17179869183L) >>> 22)) & 255);
out[93 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[21 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[22 + inPos] & 17179869183L) << 4)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[22 + inPos] & 17179869183L) >>> 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[22 + inPos] & 17179869183L) >>> 12)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[22 + inPos] & 17179869183L) >>> 20)) & 255);
out[97 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[22 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[23 + inPos] & 17179869183L) << 6)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[23 + inPos] & 17179869183L) >>> 2)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[23 + inPos] & 17179869183L) >>> 10)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[23 + inPos] & 17179869183L) >>> 18)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[23 + inPos] & 17179869183L) >>> 26)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[24 + inPos] & 17179869183L))) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[24 + inPos] & 17179869183L) >>> 8)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[24 + inPos] & 17179869183L) >>> 16)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[24 + inPos] & 17179869183L) >>> 24)) & 255);
out[106 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[24 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[25 + inPos] & 17179869183L) << 2)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[25 + inPos] & 17179869183L) >>> 6)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[25 + inPos] & 17179869183L) >>> 14)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[25 + inPos] & 17179869183L) >>> 22)) & 255);
out[110 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[25 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[26 + inPos] & 17179869183L) << 4)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[26 + inPos] & 17179869183L) >>> 4)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[26 + inPos] & 17179869183L) >>> 12)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[26 + inPos] & 17179869183L) >>> 20)) & 255);
out[114 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[26 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[27 + inPos] & 17179869183L) << 6)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[27 + inPos] & 17179869183L) >>> 2)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[27 + inPos] & 17179869183L) >>> 10)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[27 + inPos] & 17179869183L) >>> 18)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[27 + inPos] & 17179869183L) >>> 26)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [__________________________76543210]
((in[28 + inPos] & 17179869183L))) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [__________________54321098________]
((in[28 + inPos] & 17179869183L) >>> 8)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [__________32109876________________]
((in[28 + inPos] & 17179869183L) >>> 16)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [__10987654________________________]
((in[28 + inPos] & 17179869183L) >>> 24)) & 255);
out[123 + outPos] = (byte)((
// [______10]
// [32________________________________]
((in[28 + inPos] & 17179869183L) >>> 32)
| // [765432__]
// [____________________________543210]
((in[29 + inPos] & 17179869183L) << 2)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________________32109876______]
((in[29 + inPos] & 17179869183L) >>> 6)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____________10987654______________]
((in[29 + inPos] & 17179869183L) >>> 14)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____98765432______________________]
((in[29 + inPos] & 17179869183L) >>> 22)) & 255);
out[127 + outPos] = (byte)((
// [____3210]
// [3210______________________________]
((in[29 + inPos] & 17179869183L) >>> 30)
| // [7654____]
// [______________________________3210]
((in[30 + inPos] & 17179869183L) << 4)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [______________________10987654____]
((in[30 + inPos] & 17179869183L) >>> 4)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [______________98765432____________]
((in[30 + inPos] & 17179869183L) >>> 12)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [______76543210____________________]
((in[30 + inPos] & 17179869183L) >>> 20)) & 255);
out[131 + outPos] = (byte)((
// [__543210]
// [321098____________________________]
((in[30 + inPos] & 17179869183L) >>> 28)
| // [76______]
// [________________________________10]
((in[31 + inPos] & 17179869183L) << 6)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________________98765432__]
((in[31 + inPos] & 17179869183L) >>> 2)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________________76543210__________]
((in[31 + inPos] & 17179869183L) >>> 10)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [________54321098__________________]
((in[31 + inPos] & 17179869183L) >>> 18)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [32109876__________________________]
((in[31 + inPos] & 17179869183L) >>> 26)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[ 4 + inPos]) << 32) & 17179869183L);
out[ 1 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[ 4 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[ 5 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[ 6 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[ 7 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[ 8 + inPos]) << 30) & 17179869183L);
out[ 2 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[ 8 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[ 9 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[10 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[11 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[12 + inPos]) << 28) & 17179869183L);
out[ 3 + outPos] =
// [76______]
// [________________________________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[14 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[15 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[16 + inPos]) << 26) & 17179869183L);
out[ 4 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[17 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[18 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[19 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[20 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[21 + inPos]) << 32) & 17179869183L);
out[ 5 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[21 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[22 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[23 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[24 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[25 + inPos]) << 30) & 17179869183L);
out[ 6 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[26 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[27 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[28 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[29 + inPos]) << 28) & 17179869183L);
out[ 7 + outPos] =
// [76______]
// [________________________________10]
((((long)in[29 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[30 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[31 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[32 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[33 + inPos]) << 26) & 17179869183L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get( 4 + inPos)) << 32) & 17179869183L);
out[ 1 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get( 4 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get( 5 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get( 6 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get( 7 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get( 8 + inPos)) << 30) & 17179869183L);
out[ 2 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get( 8 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get( 9 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(10 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(11 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(12 + inPos)) << 28) & 17179869183L);
out[ 3 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(14 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(15 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(16 + inPos)) << 26) & 17179869183L);
out[ 4 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(17 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(18 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(19 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(20 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(21 + inPos)) << 32) & 17179869183L);
out[ 5 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(21 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(22 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(23 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(24 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(25 + inPos)) << 30) & 17179869183L);
out[ 6 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(27 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(28 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(29 + inPos)) << 28) & 17179869183L);
out[ 7 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(29 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(30 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(31 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(32 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(33 + inPos)) << 26) & 17179869183L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[ 4 + inPos]) << 32) & 17179869183L);
out[ 1 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[ 4 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[ 5 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[ 6 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[ 7 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[ 8 + inPos]) << 30) & 17179869183L);
out[ 2 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[ 8 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[ 9 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[10 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[11 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[12 + inPos]) << 28) & 17179869183L);
out[ 3 + outPos] =
// [76______]
// [________________________________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[14 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[15 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[16 + inPos]) << 26) & 17179869183L);
out[ 4 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[17 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[18 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[19 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[20 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[21 + inPos]) << 32) & 17179869183L);
out[ 5 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[21 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[22 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[23 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[24 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[25 + inPos]) << 30) & 17179869183L);
out[ 6 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[26 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[27 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[28 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[29 + inPos]) << 28) & 17179869183L);
out[ 7 + outPos] =
// [76______]
// [________________________________10]
((((long)in[29 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[30 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[31 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[32 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[33 + inPos]) << 26) & 17179869183L);
out[ 8 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[34 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[35 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[36 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[37 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[38 + inPos]) << 32) & 17179869183L);
out[ 9 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[38 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[39 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[40 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[41 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[42 + inPos]) << 30) & 17179869183L);
out[10 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[42 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[43 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[44 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[45 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[46 + inPos]) << 28) & 17179869183L);
out[11 + outPos] =
// [76______]
// [________________________________10]
((((long)in[46 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[47 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[48 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[49 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[50 + inPos]) << 26) & 17179869183L);
out[12 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[51 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[52 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[53 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[54 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[55 + inPos]) << 32) & 17179869183L);
out[13 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[55 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[56 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[57 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[58 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[59 + inPos]) << 30) & 17179869183L);
out[14 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[59 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[60 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[61 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[62 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[63 + inPos]) << 28) & 17179869183L);
out[15 + outPos] =
// [76______]
// [________________________________10]
((((long)in[63 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[64 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[65 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[66 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[67 + inPos]) << 26) & 17179869183L);
out[16 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[68 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[69 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[70 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[71 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[72 + inPos]) << 32) & 17179869183L);
out[17 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[72 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[73 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[74 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[75 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[76 + inPos]) << 30) & 17179869183L);
out[18 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[76 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[77 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[78 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[79 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[80 + inPos]) << 28) & 17179869183L);
out[19 + outPos] =
// [76______]
// [________________________________10]
((((long)in[80 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[81 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[82 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[83 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[84 + inPos]) << 26) & 17179869183L);
out[20 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[85 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[86 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[87 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[88 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[89 + inPos]) << 32) & 17179869183L);
out[21 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[89 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[90 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[91 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[92 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[93 + inPos]) << 30) & 17179869183L);
out[22 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[93 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[94 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[95 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[96 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[97 + inPos]) << 28) & 17179869183L);
out[23 + outPos] =
// [76______]
// [________________________________10]
((((long)in[97 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[98 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[99 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[100 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[101 + inPos]) << 26) & 17179869183L);
out[24 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[102 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[103 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[104 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[105 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[106 + inPos]) << 32) & 17179869183L);
out[25 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[106 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[107 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[108 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[109 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[110 + inPos]) << 30) & 17179869183L);
out[26 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[110 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[111 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[112 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[113 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[114 + inPos]) << 28) & 17179869183L);
out[27 + outPos] =
// [76______]
// [________________________________10]
((((long)in[114 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[115 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[116 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[117 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[118 + inPos]) << 26) & 17179869183L);
out[28 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in[119 + inPos]) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in[120 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in[121 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in[122 + inPos]) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in[123 + inPos]) << 32) & 17179869183L);
out[29 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in[123 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in[124 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in[125 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in[126 + inPos]) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in[127 + inPos]) << 30) & 17179869183L);
out[30 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in[127 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in[128 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in[129 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in[130 + inPos]) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in[131 + inPos]) << 28) & 17179869183L);
out[31 + outPos] =
// [76______]
// [________________________________10]
((((long)in[131 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in[132 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in[133 + inPos]) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in[134 + inPos]) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in[135 + inPos]) << 26) & 17179869183L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get( 4 + inPos)) << 32) & 17179869183L);
out[ 1 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get( 4 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get( 5 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get( 6 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get( 7 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get( 8 + inPos)) << 30) & 17179869183L);
out[ 2 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get( 8 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get( 9 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(10 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(11 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(12 + inPos)) << 28) & 17179869183L);
out[ 3 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(14 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(15 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(16 + inPos)) << 26) & 17179869183L);
out[ 4 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(17 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(18 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(19 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(20 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(21 + inPos)) << 32) & 17179869183L);
out[ 5 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(21 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(22 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(23 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(24 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(25 + inPos)) << 30) & 17179869183L);
out[ 6 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(27 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(28 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(29 + inPos)) << 28) & 17179869183L);
out[ 7 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(29 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(30 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(31 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(32 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(33 + inPos)) << 26) & 17179869183L);
out[ 8 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(34 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(35 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(36 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(37 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(38 + inPos)) << 32) & 17179869183L);
out[ 9 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(38 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(39 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(40 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(41 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(42 + inPos)) << 30) & 17179869183L);
out[10 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(42 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(43 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(44 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(45 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(46 + inPos)) << 28) & 17179869183L);
out[11 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(46 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(47 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(48 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(49 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(50 + inPos)) << 26) & 17179869183L);
out[12 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(51 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(52 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(53 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(54 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(55 + inPos)) << 32) & 17179869183L);
out[13 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(55 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(56 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(57 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(58 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(59 + inPos)) << 30) & 17179869183L);
out[14 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(59 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(60 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(61 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(62 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(63 + inPos)) << 28) & 17179869183L);
out[15 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(63 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(64 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(65 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(66 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(67 + inPos)) << 26) & 17179869183L);
out[16 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(68 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(69 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(70 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(71 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(72 + inPos)) << 32) & 17179869183L);
out[17 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(72 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(73 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(74 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(75 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(76 + inPos)) << 30) & 17179869183L);
out[18 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(76 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(77 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(78 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(79 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(80 + inPos)) << 28) & 17179869183L);
out[19 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(80 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(81 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(82 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(83 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(84 + inPos)) << 26) & 17179869183L);
out[20 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(85 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(86 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(87 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(88 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(89 + inPos)) << 32) & 17179869183L);
out[21 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(89 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(90 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(91 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(92 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(93 + inPos)) << 30) & 17179869183L);
out[22 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(93 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(94 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(95 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(96 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(97 + inPos)) << 28) & 17179869183L);
out[23 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(97 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(98 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(99 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(100 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(101 + inPos)) << 26) & 17179869183L);
out[24 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(102 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(103 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(104 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(105 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(106 + inPos)) << 32) & 17179869183L);
out[25 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(106 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(107 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(108 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(109 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(110 + inPos)) << 30) & 17179869183L);
out[26 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(110 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(111 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(112 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(113 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(114 + inPos)) << 28) & 17179869183L);
out[27 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(114 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(115 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(116 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(117 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(118 + inPos)) << 26) & 17179869183L);
out[28 + outPos] =
// [76543210]
// [__________________________76543210]
((((long)in.get(119 + inPos)) ) & 255L)
| // [76543210]
// [__________________54321098________]
((((long)in.get(120 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________32109876________________]
((((long)in.get(121 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__10987654________________________]
((((long)in.get(122 + inPos)) << 24) & 4294967295L)
| // [______10]
// [32________________________________]
((((long)in.get(123 + inPos)) << 32) & 17179869183L);
out[29 + outPos] =
// [765432__]
// [____________________________543210]
((((long)in.get(123 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________32109876______]
((((long)in.get(124 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________10987654______________]
((((long)in.get(125 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____98765432______________________]
((((long)in.get(126 + inPos)) << 22) & 1073741823L)
| // [____3210]
// [3210______________________________]
((((long)in.get(127 + inPos)) << 30) & 17179869183L);
out[30 + outPos] =
// [7654____]
// [______________________________3210]
((((long)in.get(127 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________10987654____]
((((long)in.get(128 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________98765432____________]
((((long)in.get(129 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______76543210____________________]
((((long)in.get(130 + inPos)) << 20) & 268435455L)
| // [__543210]
// [321098____________________________]
((((long)in.get(131 + inPos)) << 28) & 17179869183L);
out[31 + outPos] =
// [76______]
// [________________________________10]
((((long)in.get(131 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________98765432__]
((((long)in.get(132 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________76543210__________]
((((long)in.get(133 + inPos)) << 10) & 262143L)
| // [76543210]
// [________54321098__________________]
((((long)in.get(134 + inPos)) << 18) & 67108863L)
| // [76543210]
// [32109876__________________________]
((((long)in.get(135 + inPos)) << 26) & 17179869183L);
}
}
private static final class Packer35 extends BytePackerForLong {
private Packer35() {
super(35);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________76543210]
((in[ 0 + inPos] & 34359738367L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________54321098________]
((in[ 0 + inPos] & 34359738367L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________32109876________________]
((in[ 0 + inPos] & 34359738367L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___10987654________________________]
((in[ 0 + inPos] & 34359738367L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [432________________________________]
((in[ 0 + inPos] & 34359738367L) >>> 32)
| // [76543___]
// [______________________________43210]
((in[ 1 + inPos] & 34359738367L) << 3)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________________21098765_____]
((in[ 1 + inPos] & 34359738367L) >>> 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________09876543_____________]
((in[ 1 + inPos] & 34359738367L) >>> 13)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______87654321_____________________]
((in[ 1 + inPos] & 34359738367L) >>> 21)) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [432109_____________________________]
((in[ 1 + inPos] & 34359738367L) >>> 29)
| // [76______]
// [_________________________________10]
((in[ 2 + inPos] & 34359738367L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_________________________98765432__]
((in[ 2 + inPos] & 34359738367L) >>> 2)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_________________76543210__________]
((in[ 2 + inPos] & 34359738367L) >>> 10)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________54321098__________________]
((in[ 2 + inPos] & 34359738367L) >>> 18)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_32109876__________________________]
((in[ 2 + inPos] & 34359738367L) >>> 26)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [4__________________________________]
((in[ 2 + inPos] & 34359738367L) >>> 34)
| // [7654321_]
// [____________________________6543210]
((in[ 3 + inPos] & 34359738367L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________43210987_______]
((in[ 3 + inPos] & 34359738367L) >>> 7)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________21098765_______________]
((in[ 3 + inPos] & 34359738367L) >>> 15)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____09876543_______________________]
((in[ 3 + inPos] & 34359738367L) >>> 23)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [4321_______________________________]
((in[ 3 + inPos] & 34359738367L) >>> 31)
| // [7654____]
// [_______________________________3210]
((in[ 4 + inPos] & 34359738367L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______________________10987654____]
((in[ 4 + inPos] & 34359738367L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________98765432____________]
((in[ 4 + inPos] & 34359738367L) >>> 12)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______76543210____________________]
((in[ 4 + inPos] & 34359738367L) >>> 20)) & 255);
out[21 + outPos] = (byte)((
// [_6543210]
// [4321098____________________________]
((in[ 4 + inPos] & 34359738367L) >>> 28)
| // [7_______]
// [__________________________________0]
((in[ 5 + inPos] & 34359738367L) << 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_]
((in[ 5 + inPos] & 34359738367L) >>> 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________65432109_________]
((in[ 5 + inPos] & 34359738367L) >>> 9)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________43210987_________________]
((in[ 5 + inPos] & 34359738367L) >>> 17)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__21098765_________________________]
((in[ 5 + inPos] & 34359738367L) >>> 25)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [43_________________________________]
((in[ 5 + inPos] & 34359738367L) >>> 33)
| // [765432__]
// [_____________________________543210]
((in[ 6 + inPos] & 34359738367L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_____________________32109876______]
((in[ 6 + inPos] & 34359738367L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_____________10987654______________]
((in[ 6 + inPos] & 34359738367L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____98765432______________________]
((in[ 6 + inPos] & 34359738367L) >>> 22)) & 255);
out[30 + outPos] = (byte)((
// [___43210]
// [43210______________________________]
((in[ 6 + inPos] & 34359738367L) >>> 30)
| // [765_____]
// [________________________________210]
((in[ 7 + inPos] & 34359738367L) << 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________09876543___]
((in[ 7 + inPos] & 34359738367L) >>> 3)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________87654321___________]
((in[ 7 + inPos] & 34359738367L) >>> 11)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________65432109___________________]
((in[ 7 + inPos] & 34359738367L) >>> 19)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [43210987___________________________]
((in[ 7 + inPos] & 34359738367L) >>> 27)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________76543210]
((in[ 0 + inPos] & 34359738367L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________54321098________]
((in[ 0 + inPos] & 34359738367L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________32109876________________]
((in[ 0 + inPos] & 34359738367L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___10987654________________________]
((in[ 0 + inPos] & 34359738367L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_____210]
// [432________________________________]
((in[ 0 + inPos] & 34359738367L) >>> 32)
| // [76543___]
// [______________________________43210]
((in[ 1 + inPos] & 34359738367L) << 3)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________________21098765_____]
((in[ 1 + inPos] & 34359738367L) >>> 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________09876543_____________]
((in[ 1 + inPos] & 34359738367L) >>> 13)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______87654321_____________________]
((in[ 1 + inPos] & 34359738367L) >>> 21)) & 255);
out[ 8 + outPos] = (byte)((
// [__543210]
// [432109_____________________________]
((in[ 1 + inPos] & 34359738367L) >>> 29)
| // [76______]
// [_________________________________10]
((in[ 2 + inPos] & 34359738367L) << 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [_________________________98765432__]
((in[ 2 + inPos] & 34359738367L) >>> 2)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_________________76543210__________]
((in[ 2 + inPos] & 34359738367L) >>> 10)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________54321098__________________]
((in[ 2 + inPos] & 34359738367L) >>> 18)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_32109876__________________________]
((in[ 2 + inPos] & 34359738367L) >>> 26)) & 255);
out[13 + outPos] = (byte)((
// [_______0]
// [4__________________________________]
((in[ 2 + inPos] & 34359738367L) >>> 34)
| // [7654321_]
// [____________________________6543210]
((in[ 3 + inPos] & 34359738367L) << 1)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________43210987_______]
((in[ 3 + inPos] & 34359738367L) >>> 7)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________21098765_______________]
((in[ 3 + inPos] & 34359738367L) >>> 15)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____09876543_______________________]
((in[ 3 + inPos] & 34359738367L) >>> 23)) & 255);
out[17 + outPos] = (byte)((
// [____3210]
// [4321_______________________________]
((in[ 3 + inPos] & 34359738367L) >>> 31)
| // [7654____]
// [_______________________________3210]
((in[ 4 + inPos] & 34359738367L) << 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______________________10987654____]
((in[ 4 + inPos] & 34359738367L) >>> 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________98765432____________]
((in[ 4 + inPos] & 34359738367L) >>> 12)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______76543210____________________]
((in[ 4 + inPos] & 34359738367L) >>> 20)) & 255);
out[21 + outPos] = (byte)((
// [_6543210]
// [4321098____________________________]
((in[ 4 + inPos] & 34359738367L) >>> 28)
| // [7_______]
// [__________________________________0]
((in[ 5 + inPos] & 34359738367L) << 7)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_]
((in[ 5 + inPos] & 34359738367L) >>> 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________65432109_________]
((in[ 5 + inPos] & 34359738367L) >>> 9)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________43210987_________________]
((in[ 5 + inPos] & 34359738367L) >>> 17)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__21098765_________________________]
((in[ 5 + inPos] & 34359738367L) >>> 25)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [43_________________________________]
((in[ 5 + inPos] & 34359738367L) >>> 33)
| // [765432__]
// [_____________________________543210]
((in[ 6 + inPos] & 34359738367L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_____________________32109876______]
((in[ 6 + inPos] & 34359738367L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_____________10987654______________]
((in[ 6 + inPos] & 34359738367L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____98765432______________________]
((in[ 6 + inPos] & 34359738367L) >>> 22)) & 255);
out[30 + outPos] = (byte)((
// [___43210]
// [43210______________________________]
((in[ 6 + inPos] & 34359738367L) >>> 30)
| // [765_____]
// [________________________________210]
((in[ 7 + inPos] & 34359738367L) << 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________09876543___]
((in[ 7 + inPos] & 34359738367L) >>> 3)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________87654321___________]
((in[ 7 + inPos] & 34359738367L) >>> 11)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________65432109___________________]
((in[ 7 + inPos] & 34359738367L) >>> 19)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [43210987___________________________]
((in[ 7 + inPos] & 34359738367L) >>> 27)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________________________76543210]
((in[ 8 + inPos] & 34359738367L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___________________54321098________]
((in[ 8 + inPos] & 34359738367L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________32109876________________]
((in[ 8 + inPos] & 34359738367L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___10987654________________________]
((in[ 8 + inPos] & 34359738367L) >>> 24)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [432________________________________]
((in[ 8 + inPos] & 34359738367L) >>> 32)
| // [76543___]
// [______________________________43210]
((in[ 9 + inPos] & 34359738367L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________________21098765_____]
((in[ 9 + inPos] & 34359738367L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________09876543_____________]
((in[ 9 + inPos] & 34359738367L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______87654321_____________________]
((in[ 9 + inPos] & 34359738367L) >>> 21)) & 255);
out[43 + outPos] = (byte)((
// [__543210]
// [432109_____________________________]
((in[ 9 + inPos] & 34359738367L) >>> 29)
| // [76______]
// [_________________________________10]
((in[10 + inPos] & 34359738367L) << 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_________________________98765432__]
((in[10 + inPos] & 34359738367L) >>> 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_________________76543210__________]
((in[10 + inPos] & 34359738367L) >>> 10)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_________54321098__________________]
((in[10 + inPos] & 34359738367L) >>> 18)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_32109876__________________________]
((in[10 + inPos] & 34359738367L) >>> 26)) & 255);
out[48 + outPos] = (byte)((
// [_______0]
// [4__________________________________]
((in[10 + inPos] & 34359738367L) >>> 34)
| // [7654321_]
// [____________________________6543210]
((in[11 + inPos] & 34359738367L) << 1)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________43210987_______]
((in[11 + inPos] & 34359738367L) >>> 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________21098765_______________]
((in[11 + inPos] & 34359738367L) >>> 15)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____09876543_______________________]
((in[11 + inPos] & 34359738367L) >>> 23)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [4321_______________________________]
((in[11 + inPos] & 34359738367L) >>> 31)
| // [7654____]
// [_______________________________3210]
((in[12 + inPos] & 34359738367L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_______________________10987654____]
((in[12 + inPos] & 34359738367L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_______________98765432____________]
((in[12 + inPos] & 34359738367L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [_______76543210____________________]
((in[12 + inPos] & 34359738367L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [_6543210]
// [4321098____________________________]
((in[12 + inPos] & 34359738367L) >>> 28)
| // [7_______]
// [__________________________________0]
((in[13 + inPos] & 34359738367L) << 7)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_]
((in[13 + inPos] & 34359738367L) >>> 1)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [__________________65432109_________]
((in[13 + inPos] & 34359738367L) >>> 9)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [__________43210987_________________]
((in[13 + inPos] & 34359738367L) >>> 17)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [__21098765_________________________]
((in[13 + inPos] & 34359738367L) >>> 25)) & 255);
out[61 + outPos] = (byte)((
// [______10]
// [43_________________________________]
((in[13 + inPos] & 34359738367L) >>> 33)
| // [765432__]
// [_____________________________543210]
((in[14 + inPos] & 34359738367L) << 2)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_____________________32109876______]
((in[14 + inPos] & 34359738367L) >>> 6)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____________10987654______________]
((in[14 + inPos] & 34359738367L) >>> 14)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_____98765432______________________]
((in[14 + inPos] & 34359738367L) >>> 22)) & 255);
out[65 + outPos] = (byte)((
// [___43210]
// [43210______________________________]
((in[14 + inPos] & 34359738367L) >>> 30)
| // [765_____]
// [________________________________210]
((in[15 + inPos] & 34359738367L) << 5)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________________09876543___]
((in[15 + inPos] & 34359738367L) >>> 3)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________87654321___________]
((in[15 + inPos] & 34359738367L) >>> 11)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________65432109___________________]
((in[15 + inPos] & 34359738367L) >>> 19)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [43210987___________________________]
((in[15 + inPos] & 34359738367L) >>> 27)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [___________________________76543210]
((in[16 + inPos] & 34359738367L))) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [___________________54321098________]
((in[16 + inPos] & 34359738367L) >>> 8)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [___________32109876________________]
((in[16 + inPos] & 34359738367L) >>> 16)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [___10987654________________________]
((in[16 + inPos] & 34359738367L) >>> 24)) & 255);
out[74 + outPos] = (byte)((
// [_____210]
// [432________________________________]
((in[16 + inPos] & 34359738367L) >>> 32)
| // [76543___]
// [______________________________43210]
((in[17 + inPos] & 34359738367L) << 3)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________21098765_____]
((in[17 + inPos] & 34359738367L) >>> 5)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________09876543_____________]
((in[17 + inPos] & 34359738367L) >>> 13)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______87654321_____________________]
((in[17 + inPos] & 34359738367L) >>> 21)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [432109_____________________________]
((in[17 + inPos] & 34359738367L) >>> 29)
| // [76______]
// [_________________________________10]
((in[18 + inPos] & 34359738367L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_________________________98765432__]
((in[18 + inPos] & 34359738367L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_________________76543210__________]
((in[18 + inPos] & 34359738367L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_________54321098__________________]
((in[18 + inPos] & 34359738367L) >>> 18)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [_32109876__________________________]
((in[18 + inPos] & 34359738367L) >>> 26)) & 255);
out[83 + outPos] = (byte)((
// [_______0]
// [4__________________________________]
((in[18 + inPos] & 34359738367L) >>> 34)
| // [7654321_]
// [____________________________6543210]
((in[19 + inPos] & 34359738367L) << 1)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____________________43210987_______]
((in[19 + inPos] & 34359738367L) >>> 7)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________21098765_______________]
((in[19 + inPos] & 34359738367L) >>> 15)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____09876543_______________________]
((in[19 + inPos] & 34359738367L) >>> 23)) & 255);
out[87 + outPos] = (byte)((
// [____3210]
// [4321_______________________________]
((in[19 + inPos] & 34359738367L) >>> 31)
| // [7654____]
// [_______________________________3210]
((in[20 + inPos] & 34359738367L) << 4)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_______________________10987654____]
((in[20 + inPos] & 34359738367L) >>> 4)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_______________98765432____________]
((in[20 + inPos] & 34359738367L) >>> 12)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_______76543210____________________]
((in[20 + inPos] & 34359738367L) >>> 20)) & 255);
out[91 + outPos] = (byte)((
// [_6543210]
// [4321098____________________________]
((in[20 + inPos] & 34359738367L) >>> 28)
| // [7_______]
// [__________________________________0]
((in[21 + inPos] & 34359738367L) << 7)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_]
((in[21 + inPos] & 34359738367L) >>> 1)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [__________________65432109_________]
((in[21 + inPos] & 34359738367L) >>> 9)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [__________43210987_________________]
((in[21 + inPos] & 34359738367L) >>> 17)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [__21098765_________________________]
((in[21 + inPos] & 34359738367L) >>> 25)) & 255);
out[96 + outPos] = (byte)((
// [______10]
// [43_________________________________]
((in[21 + inPos] & 34359738367L) >>> 33)
| // [765432__]
// [_____________________________543210]
((in[22 + inPos] & 34359738367L) << 2)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [_____________________32109876______]
((in[22 + inPos] & 34359738367L) >>> 6)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_____________10987654______________]
((in[22 + inPos] & 34359738367L) >>> 14)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [_____98765432______________________]
((in[22 + inPos] & 34359738367L) >>> 22)) & 255);
out[100 + outPos] = (byte)((
// [___43210]
// [43210______________________________]
((in[22 + inPos] & 34359738367L) >>> 30)
| // [765_____]
// [________________________________210]
((in[23 + inPos] & 34359738367L) << 5)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________09876543___]
((in[23 + inPos] & 34359738367L) >>> 3)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________87654321___________]
((in[23 + inPos] & 34359738367L) >>> 11)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________65432109___________________]
((in[23 + inPos] & 34359738367L) >>> 19)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [43210987___________________________]
((in[23 + inPos] & 34359738367L) >>> 27)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [___________________________76543210]
((in[24 + inPos] & 34359738367L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [___________________54321098________]
((in[24 + inPos] & 34359738367L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [___________32109876________________]
((in[24 + inPos] & 34359738367L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [___10987654________________________]
((in[24 + inPos] & 34359738367L) >>> 24)) & 255);
out[109 + outPos] = (byte)((
// [_____210]
// [432________________________________]
((in[24 + inPos] & 34359738367L) >>> 32)
| // [76543___]
// [______________________________43210]
((in[25 + inPos] & 34359738367L) << 3)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [______________________21098765_____]
((in[25 + inPos] & 34359738367L) >>> 5)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [______________09876543_____________]
((in[25 + inPos] & 34359738367L) >>> 13)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [______87654321_____________________]
((in[25 + inPos] & 34359738367L) >>> 21)) & 255);
out[113 + outPos] = (byte)((
// [__543210]
// [432109_____________________________]
((in[25 + inPos] & 34359738367L) >>> 29)
| // [76______]
// [_________________________________10]
((in[26 + inPos] & 34359738367L) << 6)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_________________________98765432__]
((in[26 + inPos] & 34359738367L) >>> 2)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_________________76543210__________]
((in[26 + inPos] & 34359738367L) >>> 10)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_________54321098__________________]
((in[26 + inPos] & 34359738367L) >>> 18)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_32109876__________________________]
((in[26 + inPos] & 34359738367L) >>> 26)) & 255);
out[118 + outPos] = (byte)((
// [_______0]
// [4__________________________________]
((in[26 + inPos] & 34359738367L) >>> 34)
| // [7654321_]
// [____________________________6543210]
((in[27 + inPos] & 34359738367L) << 1)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________________43210987_______]
((in[27 + inPos] & 34359738367L) >>> 7)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____________21098765_______________]
((in[27 + inPos] & 34359738367L) >>> 15)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____09876543_______________________]
((in[27 + inPos] & 34359738367L) >>> 23)) & 255);
out[122 + outPos] = (byte)((
// [____3210]
// [4321_______________________________]
((in[27 + inPos] & 34359738367L) >>> 31)
| // [7654____]
// [_______________________________3210]
((in[28 + inPos] & 34359738367L) << 4)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_______________________10987654____]
((in[28 + inPos] & 34359738367L) >>> 4)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_______________98765432____________]
((in[28 + inPos] & 34359738367L) >>> 12)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_______76543210____________________]
((in[28 + inPos] & 34359738367L) >>> 20)) & 255);
out[126 + outPos] = (byte)((
// [_6543210]
// [4321098____________________________]
((in[28 + inPos] & 34359738367L) >>> 28)
| // [7_______]
// [__________________________________0]
((in[29 + inPos] & 34359738367L) << 7)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_]
((in[29 + inPos] & 34359738367L) >>> 1)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [__________________65432109_________]
((in[29 + inPos] & 34359738367L) >>> 9)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [__________43210987_________________]
((in[29 + inPos] & 34359738367L) >>> 17)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__21098765_________________________]
((in[29 + inPos] & 34359738367L) >>> 25)) & 255);
out[131 + outPos] = (byte)((
// [______10]
// [43_________________________________]
((in[29 + inPos] & 34359738367L) >>> 33)
| // [765432__]
// [_____________________________543210]
((in[30 + inPos] & 34359738367L) << 2)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [_____________________32109876______]
((in[30 + inPos] & 34359738367L) >>> 6)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [_____________10987654______________]
((in[30 + inPos] & 34359738367L) >>> 14)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [_____98765432______________________]
((in[30 + inPos] & 34359738367L) >>> 22)) & 255);
out[135 + outPos] = (byte)((
// [___43210]
// [43210______________________________]
((in[30 + inPos] & 34359738367L) >>> 30)
| // [765_____]
// [________________________________210]
((in[31 + inPos] & 34359738367L) << 5)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________________________09876543___]
((in[31 + inPos] & 34359738367L) >>> 3)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________87654321___________]
((in[31 + inPos] & 34359738367L) >>> 11)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________65432109___________________]
((in[31 + inPos] & 34359738367L) >>> 19)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [43210987___________________________]
((in[31 + inPos] & 34359738367L) >>> 27)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in[ 4 + inPos]) << 32) & 34359738367L);
out[ 1 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in[ 4 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in[ 5 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in[ 6 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in[ 7 + inPos]) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in[ 8 + inPos]) << 29) & 34359738367L);
out[ 2 + outPos] =
// [76______]
// [_________________________________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in[10 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in[11 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in[12 + inPos]) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in[13 + inPos]) << 34) & 34359738367L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in[15 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in[16 + inPos]) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in[17 + inPos]) << 31) & 34359738367L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in[20 + inPos]) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in[21 + inPos]) << 28) & 34359738367L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in[21 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in[22 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in[23 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in[24 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in[25 + inPos]) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in[26 + inPos]) << 33) & 34359738367L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in[30 + inPos]) << 30) & 34359738367L);
out[ 7 + outPos] =
// [765_____]
// [________________________________210]
((((long)in[30 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in[31 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in[32 + inPos]) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in[33 + inPos]) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in[34 + inPos]) << 27) & 34359738367L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 34359738367L);
out[ 1 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in.get( 5 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in.get( 6 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in.get( 7 + inPos)) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in.get( 8 + inPos)) << 29) & 34359738367L);
out[ 2 + outPos] =
// [76______]
// [_________________________________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in.get(10 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in.get(11 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in.get(12 + inPos)) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in.get(13 + inPos)) << 34) & 34359738367L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in.get(15 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in.get(16 + inPos)) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in.get(17 + inPos)) << 31) & 34359738367L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in.get(20 + inPos)) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in.get(21 + inPos)) << 28) & 34359738367L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in.get(21 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in.get(22 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in.get(23 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in.get(24 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in.get(25 + inPos)) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in.get(26 + inPos)) << 33) & 34359738367L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in.get(30 + inPos)) << 30) & 34359738367L);
out[ 7 + outPos] =
// [765_____]
// [________________________________210]
((((long)in.get(30 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in.get(31 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in.get(32 + inPos)) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in.get(33 + inPos)) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in.get(34 + inPos)) << 27) & 34359738367L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in[ 4 + inPos]) << 32) & 34359738367L);
out[ 1 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in[ 4 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in[ 5 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in[ 6 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in[ 7 + inPos]) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in[ 8 + inPos]) << 29) & 34359738367L);
out[ 2 + outPos] =
// [76______]
// [_________________________________10]
((((long)in[ 8 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in[ 9 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in[10 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in[11 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in[12 + inPos]) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in[13 + inPos]) << 34) & 34359738367L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in[13 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in[14 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in[15 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in[16 + inPos]) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in[17 + inPos]) << 31) & 34359738367L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in[17 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in[18 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in[19 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in[20 + inPos]) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in[21 + inPos]) << 28) & 34359738367L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in[21 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in[22 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in[23 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in[24 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in[25 + inPos]) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in[26 + inPos]) << 33) & 34359738367L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in[30 + inPos]) << 30) & 34359738367L);
out[ 7 + outPos] =
// [765_____]
// [________________________________210]
((((long)in[30 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in[31 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in[32 + inPos]) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in[33 + inPos]) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in[34 + inPos]) << 27) & 34359738367L);
out[ 8 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in[38 + inPos]) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in[39 + inPos]) << 32) & 34359738367L);
out[ 9 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in[42 + inPos]) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in[43 + inPos]) << 29) & 34359738367L);
out[10 + outPos] =
// [76______]
// [_________________________________10]
((((long)in[43 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in[44 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in[45 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in[46 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in[47 + inPos]) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in[48 + inPos]) << 34) & 34359738367L);
out[11 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in[48 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in[49 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in[50 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in[51 + inPos]) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in[52 + inPos]) << 31) & 34359738367L);
out[12 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in[56 + inPos]) << 28) & 34359738367L);
out[13 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in[56 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in[57 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in[58 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in[59 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in[60 + inPos]) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in[61 + inPos]) << 33) & 34359738367L);
out[14 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in[61 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in[62 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in[63 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in[64 + inPos]) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in[65 + inPos]) << 30) & 34359738367L);
out[15 + outPos] =
// [765_____]
// [________________________________210]
((((long)in[65 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in[66 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in[67 + inPos]) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in[68 + inPos]) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in[69 + inPos]) << 27) & 34359738367L);
out[16 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in[70 + inPos]) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in[71 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in[72 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in[73 + inPos]) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in[74 + inPos]) << 32) & 34359738367L);
out[17 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in[74 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in[75 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in[76 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in[77 + inPos]) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in[78 + inPos]) << 29) & 34359738367L);
out[18 + outPos] =
// [76______]
// [_________________________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in[81 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in[82 + inPos]) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in[83 + inPos]) << 34) & 34359738367L);
out[19 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in[83 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in[84 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in[85 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in[86 + inPos]) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in[87 + inPos]) << 31) & 34359738367L);
out[20 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in[87 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in[88 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in[89 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in[90 + inPos]) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in[91 + inPos]) << 28) & 34359738367L);
out[21 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in[91 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in[92 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in[93 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in[94 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in[95 + inPos]) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in[96 + inPos]) << 33) & 34359738367L);
out[22 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in[96 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in[97 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in[98 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in[99 + inPos]) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in[100 + inPos]) << 30) & 34359738367L);
out[23 + outPos] =
// [765_____]
// [________________________________210]
((((long)in[100 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in[101 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in[102 + inPos]) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in[103 + inPos]) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in[104 + inPos]) << 27) & 34359738367L);
out[24 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in[108 + inPos]) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in[109 + inPos]) << 32) & 34359738367L);
out[25 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in[109 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in[110 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in[111 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in[112 + inPos]) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in[113 + inPos]) << 29) & 34359738367L);
out[26 + outPos] =
// [76______]
// [_________________________________10]
((((long)in[113 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in[114 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in[115 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in[116 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in[117 + inPos]) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in[118 + inPos]) << 34) & 34359738367L);
out[27 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in[118 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in[119 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in[120 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in[121 + inPos]) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in[122 + inPos]) << 31) & 34359738367L);
out[28 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in[122 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in[123 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in[124 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in[125 + inPos]) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in[126 + inPos]) << 28) & 34359738367L);
out[29 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in[126 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in[127 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in[128 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in[129 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in[130 + inPos]) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in[131 + inPos]) << 33) & 34359738367L);
out[30 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in[131 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in[132 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in[133 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in[134 + inPos]) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in[135 + inPos]) << 30) & 34359738367L);
out[31 + outPos] =
// [765_____]
// [________________________________210]
((((long)in[135 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in[136 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in[137 + inPos]) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in[138 + inPos]) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in[139 + inPos]) << 27) & 34359738367L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 34359738367L);
out[ 1 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in.get( 4 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in.get( 5 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in.get( 6 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in.get( 7 + inPos)) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in.get( 8 + inPos)) << 29) & 34359738367L);
out[ 2 + outPos] =
// [76______]
// [_________________________________10]
((((long)in.get( 8 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in.get( 9 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in.get(10 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in.get(11 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in.get(12 + inPos)) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in.get(13 + inPos)) << 34) & 34359738367L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in.get(13 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in.get(14 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in.get(15 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in.get(16 + inPos)) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in.get(17 + inPos)) << 31) & 34359738367L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in.get(17 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in.get(18 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in.get(19 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in.get(20 + inPos)) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in.get(21 + inPos)) << 28) & 34359738367L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in.get(21 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in.get(22 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in.get(23 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in.get(24 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in.get(25 + inPos)) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in.get(26 + inPos)) << 33) & 34359738367L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in.get(30 + inPos)) << 30) & 34359738367L);
out[ 7 + outPos] =
// [765_____]
// [________________________________210]
((((long)in.get(30 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in.get(31 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in.get(32 + inPos)) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in.get(33 + inPos)) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in.get(34 + inPos)) << 27) & 34359738367L);
out[ 8 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in.get(38 + inPos)) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in.get(39 + inPos)) << 32) & 34359738367L);
out[ 9 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in.get(42 + inPos)) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in.get(43 + inPos)) << 29) & 34359738367L);
out[10 + outPos] =
// [76______]
// [_________________________________10]
((((long)in.get(43 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in.get(44 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in.get(45 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in.get(46 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in.get(47 + inPos)) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in.get(48 + inPos)) << 34) & 34359738367L);
out[11 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in.get(48 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in.get(49 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in.get(50 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in.get(51 + inPos)) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in.get(52 + inPos)) << 31) & 34359738367L);
out[12 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in.get(56 + inPos)) << 28) & 34359738367L);
out[13 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in.get(56 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in.get(57 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in.get(58 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in.get(59 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in.get(60 + inPos)) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in.get(61 + inPos)) << 33) & 34359738367L);
out[14 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in.get(61 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in.get(62 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in.get(63 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in.get(64 + inPos)) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in.get(65 + inPos)) << 30) & 34359738367L);
out[15 + outPos] =
// [765_____]
// [________________________________210]
((((long)in.get(65 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in.get(66 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in.get(67 + inPos)) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in.get(68 + inPos)) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in.get(69 + inPos)) << 27) & 34359738367L);
out[16 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in.get(70 + inPos)) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in.get(71 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in.get(72 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in.get(73 + inPos)) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in.get(74 + inPos)) << 32) & 34359738367L);
out[17 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in.get(74 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in.get(75 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in.get(76 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in.get(77 + inPos)) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in.get(78 + inPos)) << 29) & 34359738367L);
out[18 + outPos] =
// [76______]
// [_________________________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in.get(81 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in.get(82 + inPos)) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in.get(83 + inPos)) << 34) & 34359738367L);
out[19 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in.get(83 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in.get(84 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in.get(85 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in.get(86 + inPos)) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in.get(87 + inPos)) << 31) & 34359738367L);
out[20 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in.get(87 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in.get(88 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in.get(89 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in.get(90 + inPos)) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in.get(91 + inPos)) << 28) & 34359738367L);
out[21 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in.get(91 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in.get(92 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in.get(93 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in.get(94 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in.get(95 + inPos)) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in.get(96 + inPos)) << 33) & 34359738367L);
out[22 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in.get(96 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in.get(97 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in.get(98 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in.get(99 + inPos)) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in.get(100 + inPos)) << 30) & 34359738367L);
out[23 + outPos] =
// [765_____]
// [________________________________210]
((((long)in.get(100 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in.get(101 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in.get(102 + inPos)) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in.get(103 + inPos)) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in.get(104 + inPos)) << 27) & 34359738367L);
out[24 + outPos] =
// [76543210]
// [___________________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [___________________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___10987654________________________]
((((long)in.get(108 + inPos)) << 24) & 4294967295L)
| // [_____210]
// [432________________________________]
((((long)in.get(109 + inPos)) << 32) & 34359738367L);
out[25 + outPos] =
// [76543___]
// [______________________________43210]
((((long)in.get(109 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________21098765_____]
((((long)in.get(110 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________09876543_____________]
((((long)in.get(111 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______87654321_____________________]
((((long)in.get(112 + inPos)) << 21) & 536870911L)
| // [__543210]
// [432109_____________________________]
((((long)in.get(113 + inPos)) << 29) & 34359738367L);
out[26 + outPos] =
// [76______]
// [_________________________________10]
((((long)in.get(113 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________98765432__]
((((long)in.get(114 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________76543210__________]
((((long)in.get(115 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________54321098__________________]
((((long)in.get(116 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_32109876__________________________]
((((long)in.get(117 + inPos)) << 26) & 17179869183L)
| // [_______0]
// [4__________________________________]
((((long)in.get(118 + inPos)) << 34) & 34359738367L);
out[27 + outPos] =
// [7654321_]
// [____________________________6543210]
((((long)in.get(118 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________43210987_______]
((((long)in.get(119 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________21098765_______________]
((((long)in.get(120 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____09876543_______________________]
((((long)in.get(121 + inPos)) << 23) & 2147483647L)
| // [____3210]
// [4321_______________________________]
((((long)in.get(122 + inPos)) << 31) & 34359738367L);
out[28 + outPos] =
// [7654____]
// [_______________________________3210]
((((long)in.get(122 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________10987654____]
((((long)in.get(123 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________98765432____________]
((((long)in.get(124 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______76543210____________________]
((((long)in.get(125 + inPos)) << 20) & 268435455L)
| // [_6543210]
// [4321098____________________________]
((((long)in.get(126 + inPos)) << 28) & 34359738367L);
out[29 + outPos] =
// [7_______]
// [__________________________________0]
((((long)in.get(126 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________87654321_]
((((long)in.get(127 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________65432109_________]
((((long)in.get(128 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________43210987_________________]
((((long)in.get(129 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__21098765_________________________]
((((long)in.get(130 + inPos)) << 25) & 8589934591L)
| // [______10]
// [43_________________________________]
((((long)in.get(131 + inPos)) << 33) & 34359738367L);
out[30 + outPos] =
// [765432__]
// [_____________________________543210]
((((long)in.get(131 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________32109876______]
((((long)in.get(132 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________10987654______________]
((((long)in.get(133 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____98765432______________________]
((((long)in.get(134 + inPos)) << 22) & 1073741823L)
| // [___43210]
// [43210______________________________]
((((long)in.get(135 + inPos)) << 30) & 34359738367L);
out[31 + outPos] =
// [765_____]
// [________________________________210]
((((long)in.get(135 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________09876543___]
((((long)in.get(136 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________87654321___________]
((((long)in.get(137 + inPos)) << 11) & 524287L)
| // [76543210]
// [________65432109___________________]
((((long)in.get(138 + inPos)) << 19) & 134217727L)
| // [76543210]
// [43210987___________________________]
((((long)in.get(139 + inPos)) << 27) & 34359738367L);
}
}
private static final class Packer36 extends BytePackerForLong {
private Packer36() {
super(36);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 0 + inPos] & 68719476735L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 0 + inPos] & 68719476735L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 0 + inPos] & 68719476735L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 0 + inPos] & 68719476735L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 0 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 1 + inPos] & 68719476735L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 1 + inPos] & 68719476735L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 1 + inPos] & 68719476735L) >>> 12)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 1 + inPos] & 68719476735L) >>> 20)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 1 + inPos] & 68719476735L) >>> 28)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 2 + inPos] & 68719476735L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 2 + inPos] & 68719476735L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 2 + inPos] & 68719476735L) >>> 16)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 2 + inPos] & 68719476735L) >>> 24)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 2 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 3 + inPos] & 68719476735L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 3 + inPos] & 68719476735L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 3 + inPos] & 68719476735L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 3 + inPos] & 68719476735L) >>> 20)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 3 + inPos] & 68719476735L) >>> 28)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 4 + inPos] & 68719476735L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 4 + inPos] & 68719476735L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 4 + inPos] & 68719476735L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 4 + inPos] & 68719476735L) >>> 24)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 4 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 5 + inPos] & 68719476735L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 5 + inPos] & 68719476735L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 5 + inPos] & 68719476735L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 5 + inPos] & 68719476735L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 5 + inPos] & 68719476735L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 6 + inPos] & 68719476735L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 6 + inPos] & 68719476735L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 6 + inPos] & 68719476735L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 6 + inPos] & 68719476735L) >>> 24)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 6 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 7 + inPos] & 68719476735L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 7 + inPos] & 68719476735L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 7 + inPos] & 68719476735L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 7 + inPos] & 68719476735L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 7 + inPos] & 68719476735L) >>> 28)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 0 + inPos] & 68719476735L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 0 + inPos] & 68719476735L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 0 + inPos] & 68719476735L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 0 + inPos] & 68719476735L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 0 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 1 + inPos] & 68719476735L) << 4)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 1 + inPos] & 68719476735L) >>> 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 1 + inPos] & 68719476735L) >>> 12)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 1 + inPos] & 68719476735L) >>> 20)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 1 + inPos] & 68719476735L) >>> 28)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 2 + inPos] & 68719476735L))) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 2 + inPos] & 68719476735L) >>> 8)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 2 + inPos] & 68719476735L) >>> 16)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 2 + inPos] & 68719476735L) >>> 24)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 2 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 3 + inPos] & 68719476735L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 3 + inPos] & 68719476735L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 3 + inPos] & 68719476735L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 3 + inPos] & 68719476735L) >>> 20)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 3 + inPos] & 68719476735L) >>> 28)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 4 + inPos] & 68719476735L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 4 + inPos] & 68719476735L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 4 + inPos] & 68719476735L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 4 + inPos] & 68719476735L) >>> 24)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 4 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 5 + inPos] & 68719476735L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 5 + inPos] & 68719476735L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 5 + inPos] & 68719476735L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 5 + inPos] & 68719476735L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 5 + inPos] & 68719476735L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 6 + inPos] & 68719476735L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 6 + inPos] & 68719476735L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 6 + inPos] & 68719476735L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 6 + inPos] & 68719476735L) >>> 24)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 6 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 7 + inPos] & 68719476735L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 7 + inPos] & 68719476735L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 7 + inPos] & 68719476735L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 7 + inPos] & 68719476735L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 7 + inPos] & 68719476735L) >>> 28)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[ 8 + inPos] & 68719476735L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[ 8 + inPos] & 68719476735L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[ 8 + inPos] & 68719476735L) >>> 16)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[ 8 + inPos] & 68719476735L) >>> 24)) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[ 8 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[ 9 + inPos] & 68719476735L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[ 9 + inPos] & 68719476735L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[ 9 + inPos] & 68719476735L) >>> 12)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[ 9 + inPos] & 68719476735L) >>> 20)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[ 9 + inPos] & 68719476735L) >>> 28)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[10 + inPos] & 68719476735L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[10 + inPos] & 68719476735L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[10 + inPos] & 68719476735L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[10 + inPos] & 68719476735L) >>> 24)) & 255);
out[49 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[10 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[11 + inPos] & 68719476735L) << 4)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[11 + inPos] & 68719476735L) >>> 4)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[11 + inPos] & 68719476735L) >>> 12)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[11 + inPos] & 68719476735L) >>> 20)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[11 + inPos] & 68719476735L) >>> 28)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[12 + inPos] & 68719476735L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[12 + inPos] & 68719476735L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[12 + inPos] & 68719476735L) >>> 16)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[12 + inPos] & 68719476735L) >>> 24)) & 255);
out[58 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[12 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[13 + inPos] & 68719476735L) << 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[13 + inPos] & 68719476735L) >>> 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[13 + inPos] & 68719476735L) >>> 12)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[13 + inPos] & 68719476735L) >>> 20)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[13 + inPos] & 68719476735L) >>> 28)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[14 + inPos] & 68719476735L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[14 + inPos] & 68719476735L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[14 + inPos] & 68719476735L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[14 + inPos] & 68719476735L) >>> 24)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[14 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[15 + inPos] & 68719476735L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[15 + inPos] & 68719476735L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[15 + inPos] & 68719476735L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[15 + inPos] & 68719476735L) >>> 20)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[15 + inPos] & 68719476735L) >>> 28)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[16 + inPos] & 68719476735L))) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[16 + inPos] & 68719476735L) >>> 8)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[16 + inPos] & 68719476735L) >>> 16)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[16 + inPos] & 68719476735L) >>> 24)) & 255);
out[76 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[16 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[17 + inPos] & 68719476735L) << 4)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[17 + inPos] & 68719476735L) >>> 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[17 + inPos] & 68719476735L) >>> 12)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[17 + inPos] & 68719476735L) >>> 20)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[17 + inPos] & 68719476735L) >>> 28)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[18 + inPos] & 68719476735L))) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[18 + inPos] & 68719476735L) >>> 8)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[18 + inPos] & 68719476735L) >>> 16)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[18 + inPos] & 68719476735L) >>> 24)) & 255);
out[85 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[18 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[19 + inPos] & 68719476735L) << 4)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[19 + inPos] & 68719476735L) >>> 4)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[19 + inPos] & 68719476735L) >>> 12)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[19 + inPos] & 68719476735L) >>> 20)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[19 + inPos] & 68719476735L) >>> 28)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[20 + inPos] & 68719476735L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[20 + inPos] & 68719476735L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[20 + inPos] & 68719476735L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[20 + inPos] & 68719476735L) >>> 24)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[20 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[21 + inPos] & 68719476735L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[21 + inPos] & 68719476735L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[21 + inPos] & 68719476735L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[21 + inPos] & 68719476735L) >>> 20)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[21 + inPos] & 68719476735L) >>> 28)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[22 + inPos] & 68719476735L))) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[22 + inPos] & 68719476735L) >>> 8)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[22 + inPos] & 68719476735L) >>> 16)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[22 + inPos] & 68719476735L) >>> 24)) & 255);
out[103 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[22 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[23 + inPos] & 68719476735L) << 4)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[23 + inPos] & 68719476735L) >>> 4)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[23 + inPos] & 68719476735L) >>> 12)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[23 + inPos] & 68719476735L) >>> 20)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[23 + inPos] & 68719476735L) >>> 28)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[24 + inPos] & 68719476735L))) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[24 + inPos] & 68719476735L) >>> 8)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[24 + inPos] & 68719476735L) >>> 16)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[24 + inPos] & 68719476735L) >>> 24)) & 255);
out[112 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[24 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[25 + inPos] & 68719476735L) << 4)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[25 + inPos] & 68719476735L) >>> 4)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[25 + inPos] & 68719476735L) >>> 12)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[25 + inPos] & 68719476735L) >>> 20)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[25 + inPos] & 68719476735L) >>> 28)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[26 + inPos] & 68719476735L))) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[26 + inPos] & 68719476735L) >>> 8)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[26 + inPos] & 68719476735L) >>> 16)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[26 + inPos] & 68719476735L) >>> 24)) & 255);
out[121 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[26 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[27 + inPos] & 68719476735L) << 4)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[27 + inPos] & 68719476735L) >>> 4)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[27 + inPos] & 68719476735L) >>> 12)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[27 + inPos] & 68719476735L) >>> 20)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[27 + inPos] & 68719476735L) >>> 28)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[28 + inPos] & 68719476735L))) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[28 + inPos] & 68719476735L) >>> 8)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[28 + inPos] & 68719476735L) >>> 16)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[28 + inPos] & 68719476735L) >>> 24)) & 255);
out[130 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[28 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[29 + inPos] & 68719476735L) << 4)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[29 + inPos] & 68719476735L) >>> 4)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[29 + inPos] & 68719476735L) >>> 12)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[29 + inPos] & 68719476735L) >>> 20)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[29 + inPos] & 68719476735L) >>> 28)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________________________76543210]
((in[30 + inPos] & 68719476735L))) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____________________54321098________]
((in[30 + inPos] & 68719476735L) >>> 8)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [____________32109876________________]
((in[30 + inPos] & 68719476735L) >>> 16)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [____10987654________________________]
((in[30 + inPos] & 68719476735L) >>> 24)) & 255);
out[139 + outPos] = (byte)((
// [____3210]
// [5432________________________________]
((in[30 + inPos] & 68719476735L) >>> 32)
| // [7654____]
// [________________________________3210]
((in[31 + inPos] & 68719476735L) << 4)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________10987654____]
((in[31 + inPos] & 68719476735L) >>> 4)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________98765432____________]
((in[31 + inPos] & 68719476735L) >>> 12)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________76543210____________________]
((in[31 + inPos] & 68719476735L) >>> 20)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [54321098____________________________]
((in[31 + inPos] & 68719476735L) >>> 28)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[ 4 + inPos]) << 32) & 68719476735L);
out[ 1 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[ 6 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[ 7 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[ 8 + inPos]) << 28) & 68719476735L);
out[ 2 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[11 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[12 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[13 + inPos]) << 32) & 68719476735L);
out[ 3 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[16 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[17 + inPos]) << 28) & 68719476735L);
out[ 4 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[21 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[22 + inPos]) << 32) & 68719476735L);
out[ 5 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L);
out[ 6 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[30 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[31 + inPos]) << 32) & 68719476735L);
out[ 7 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 68719476735L);
out[ 1 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get( 6 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get( 7 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get( 8 + inPos)) << 28) & 68719476735L);
out[ 2 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(11 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(12 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(13 + inPos)) << 32) & 68719476735L);
out[ 3 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(16 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(17 + inPos)) << 28) & 68719476735L);
out[ 4 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(21 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(22 + inPos)) << 32) & 68719476735L);
out[ 5 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L);
out[ 6 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(30 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(31 + inPos)) << 32) & 68719476735L);
out[ 7 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[ 4 + inPos]) << 32) & 68719476735L);
out[ 1 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[ 4 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[ 5 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[ 6 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[ 7 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[ 8 + inPos]) << 28) & 68719476735L);
out[ 2 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[ 9 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[10 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[11 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[12 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[13 + inPos]) << 32) & 68719476735L);
out[ 3 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[16 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[17 + inPos]) << 28) & 68719476735L);
out[ 4 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[21 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[22 + inPos]) << 32) & 68719476735L);
out[ 5 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L);
out[ 6 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[30 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[31 + inPos]) << 32) & 68719476735L);
out[ 7 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L);
out[ 8 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[38 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[39 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[40 + inPos]) << 32) & 68719476735L);
out[ 9 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[41 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[42 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[43 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[44 + inPos]) << 28) & 68719476735L);
out[10 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[48 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[49 + inPos]) << 32) & 68719476735L);
out[11 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[49 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[50 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[51 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[52 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[53 + inPos]) << 28) & 68719476735L);
out[12 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[56 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[57 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[58 + inPos]) << 32) & 68719476735L);
out[13 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[58 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[59 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[60 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[61 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[62 + inPos]) << 28) & 68719476735L);
out[14 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[66 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[67 + inPos]) << 32) & 68719476735L);
out[15 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[70 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[71 + inPos]) << 28) & 68719476735L);
out[16 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[72 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[73 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[74 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[75 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[76 + inPos]) << 32) & 68719476735L);
out[17 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[76 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[77 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[78 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[79 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[80 + inPos]) << 28) & 68719476735L);
out[18 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[81 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[82 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[83 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[84 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[85 + inPos]) << 32) & 68719476735L);
out[19 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[85 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[86 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[87 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[88 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[89 + inPos]) << 28) & 68719476735L);
out[20 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[93 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[94 + inPos]) << 32) & 68719476735L);
out[21 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[97 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[98 + inPos]) << 28) & 68719476735L);
out[22 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[99 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[100 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[101 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[102 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[103 + inPos]) << 32) & 68719476735L);
out[23 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[103 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[104 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[105 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[106 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[107 + inPos]) << 28) & 68719476735L);
out[24 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[108 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[109 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[110 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[111 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[112 + inPos]) << 32) & 68719476735L);
out[25 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[112 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[113 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[114 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[115 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[116 + inPos]) << 28) & 68719476735L);
out[26 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[117 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[118 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[119 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[120 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[121 + inPos]) << 32) & 68719476735L);
out[27 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[121 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[122 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[123 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[124 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[125 + inPos]) << 28) & 68719476735L);
out[28 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[126 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[127 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[128 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[129 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[130 + inPos]) << 32) & 68719476735L);
out[29 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[130 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[131 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[132 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[133 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[134 + inPos]) << 28) & 68719476735L);
out[30 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in[135 + inPos]) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in[136 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in[137 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in[138 + inPos]) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in[139 + inPos]) << 32) & 68719476735L);
out[31 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in[139 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in[140 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in[141 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in[142 + inPos]) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in[143 + inPos]) << 28) & 68719476735L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 68719476735L);
out[ 1 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get( 4 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get( 5 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get( 6 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get( 7 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get( 8 + inPos)) << 28) & 68719476735L);
out[ 2 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get( 9 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(10 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(11 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(12 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(13 + inPos)) << 32) & 68719476735L);
out[ 3 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(16 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(17 + inPos)) << 28) & 68719476735L);
out[ 4 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(21 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(22 + inPos)) << 32) & 68719476735L);
out[ 5 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L);
out[ 6 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(30 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(31 + inPos)) << 32) & 68719476735L);
out[ 7 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L);
out[ 8 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(38 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(39 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(40 + inPos)) << 32) & 68719476735L);
out[ 9 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(42 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(43 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(44 + inPos)) << 28) & 68719476735L);
out[10 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(48 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(49 + inPos)) << 32) & 68719476735L);
out[11 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(49 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(50 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(51 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(52 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(53 + inPos)) << 28) & 68719476735L);
out[12 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(56 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(57 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(58 + inPos)) << 32) & 68719476735L);
out[13 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(58 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(59 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(60 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(61 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(62 + inPos)) << 28) & 68719476735L);
out[14 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(66 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(67 + inPos)) << 32) & 68719476735L);
out[15 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(70 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(71 + inPos)) << 28) & 68719476735L);
out[16 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(72 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(73 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(74 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(75 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(76 + inPos)) << 32) & 68719476735L);
out[17 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(76 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(77 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(78 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(79 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(80 + inPos)) << 28) & 68719476735L);
out[18 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(81 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(82 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(83 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(84 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(85 + inPos)) << 32) & 68719476735L);
out[19 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(85 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(86 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(87 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(88 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(89 + inPos)) << 28) & 68719476735L);
out[20 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(93 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(94 + inPos)) << 32) & 68719476735L);
out[21 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(97 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(98 + inPos)) << 28) & 68719476735L);
out[22 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(99 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(100 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(101 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(102 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(103 + inPos)) << 32) & 68719476735L);
out[23 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(103 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(104 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(105 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(106 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(107 + inPos)) << 28) & 68719476735L);
out[24 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(108 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(109 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(110 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(111 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(112 + inPos)) << 32) & 68719476735L);
out[25 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(112 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(113 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(114 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(115 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(116 + inPos)) << 28) & 68719476735L);
out[26 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(117 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(118 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(119 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(120 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(121 + inPos)) << 32) & 68719476735L);
out[27 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(121 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(122 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(123 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(124 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(125 + inPos)) << 28) & 68719476735L);
out[28 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(126 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(127 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(128 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(129 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(130 + inPos)) << 32) & 68719476735L);
out[29 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(130 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(131 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(132 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(133 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(134 + inPos)) << 28) & 68719476735L);
out[30 + outPos] =
// [76543210]
// [____________________________76543210]
((((long)in.get(135 + inPos)) ) & 255L)
| // [76543210]
// [____________________54321098________]
((((long)in.get(136 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________32109876________________]
((((long)in.get(137 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____10987654________________________]
((((long)in.get(138 + inPos)) << 24) & 4294967295L)
| // [____3210]
// [5432________________________________]
((((long)in.get(139 + inPos)) << 32) & 68719476735L);
out[31 + outPos] =
// [7654____]
// [________________________________3210]
((((long)in.get(139 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________10987654____]
((((long)in.get(140 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________98765432____________]
((((long)in.get(141 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________76543210____________________]
((((long)in.get(142 + inPos)) << 20) & 268435455L)
| // [76543210]
// [54321098____________________________]
((((long)in.get(143 + inPos)) << 28) & 68719476735L);
}
}
private static final class Packer37 extends BytePackerForLong {
private Packer37() {
super(37);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210]
((in[ 0 + inPos] & 137438953471L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________54321098________]
((in[ 0 + inPos] & 137438953471L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________32109876________________]
((in[ 0 + inPos] & 137438953471L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____10987654________________________]
((in[ 0 + inPos] & 137438953471L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [___43210]
// [65432________________________________]
((in[ 0 + inPos] & 137438953471L) >>> 32)
| // [765_____]
// [__________________________________210]
((in[ 1 + inPos] & 137438953471L) << 5)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________________________09876543___]
((in[ 1 + inPos] & 137438953471L) >>> 3)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________87654321___________]
((in[ 1 + inPos] & 137438953471L) >>> 11)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________65432109___________________]
((in[ 1 + inPos] & 137438953471L) >>> 19)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__43210987___________________________]
((in[ 1 + inPos] & 137438953471L) >>> 27)) & 255);
out[ 9 + outPos] = (byte)((
// [______10]
// [65___________________________________]
((in[ 1 + inPos] & 137438953471L) >>> 35)
| // [765432__]
// [_______________________________543210]
((in[ 2 + inPos] & 137438953471L) << 2)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_______________________32109876______]
((in[ 2 + inPos] & 137438953471L) >>> 6)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_______________10987654______________]
((in[ 2 + inPos] & 137438953471L) >>> 14)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_______98765432______________________]
((in[ 2 + inPos] & 137438953471L) >>> 22)) & 255);
out[13 + outPos] = (byte)((
// [_6543210]
// [6543210______________________________]
((in[ 2 + inPos] & 137438953471L) >>> 30)
| // [7_______]
// [____________________________________0]
((in[ 3 + inPos] & 137438953471L) << 7)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_]
((in[ 3 + inPos] & 137438953471L) >>> 1)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________65432109_________]
((in[ 3 + inPos] & 137438953471L) >>> 9)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________43210987_________________]
((in[ 3 + inPos] & 137438953471L) >>> 17)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____21098765_________________________]
((in[ 3 + inPos] & 137438953471L) >>> 25)) & 255);
out[18 + outPos] = (byte)((
// [____3210]
// [6543_________________________________]
((in[ 3 + inPos] & 137438953471L) >>> 33)
| // [7654____]
// [_________________________________3210]
((in[ 4 + inPos] & 137438953471L) << 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_________________________10987654____]
((in[ 4 + inPos] & 137438953471L) >>> 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_________________98765432____________]
((in[ 4 + inPos] & 137438953471L) >>> 12)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_________76543210____________________]
((in[ 4 + inPos] & 137438953471L) >>> 20)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_54321098____________________________]
((in[ 4 + inPos] & 137438953471L) >>> 28)) & 255);
out[23 + outPos] = (byte)((
// [_______0]
// [6____________________________________]
((in[ 4 + inPos] & 137438953471L) >>> 36)
| // [7654321_]
// [______________________________6543210]
((in[ 5 + inPos] & 137438953471L) << 1)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [______________________43210987_______]
((in[ 5 + inPos] & 137438953471L) >>> 7)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [______________21098765_______________]
((in[ 5 + inPos] & 137438953471L) >>> 15)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______09876543_______________________]
((in[ 5 + inPos] & 137438953471L) >>> 23)) & 255);
out[27 + outPos] = (byte)((
// [__543210]
// [654321_______________________________]
((in[ 5 + inPos] & 137438953471L) >>> 31)
| // [76______]
// [___________________________________10]
((in[ 6 + inPos] & 137438953471L) << 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___________________________98765432__]
((in[ 6 + inPos] & 137438953471L) >>> 2)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [___________________76543210__________]
((in[ 6 + inPos] & 137438953471L) >>> 10)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [___________54321098__________________]
((in[ 6 + inPos] & 137438953471L) >>> 18)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [___32109876__________________________]
((in[ 6 + inPos] & 137438953471L) >>> 26)) & 255);
out[32 + outPos] = (byte)((
// [_____210]
// [654__________________________________]
((in[ 6 + inPos] & 137438953471L) >>> 34)
| // [76543___]
// [________________________________43210]
((in[ 7 + inPos] & 137438953471L) << 3)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________21098765_____]
((in[ 7 + inPos] & 137438953471L) >>> 5)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________09876543_____________]
((in[ 7 + inPos] & 137438953471L) >>> 13)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________87654321_____________________]
((in[ 7 + inPos] & 137438953471L) >>> 21)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [65432109_____________________________]
((in[ 7 + inPos] & 137438953471L) >>> 29)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210]
((in[ 0 + inPos] & 137438953471L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________54321098________]
((in[ 0 + inPos] & 137438953471L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________32109876________________]
((in[ 0 + inPos] & 137438953471L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____10987654________________________]
((in[ 0 + inPos] & 137438953471L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [___43210]
// [65432________________________________]
((in[ 0 + inPos] & 137438953471L) >>> 32)
| // [765_____]
// [__________________________________210]
((in[ 1 + inPos] & 137438953471L) << 5)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________________________09876543___]
((in[ 1 + inPos] & 137438953471L) >>> 3)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________87654321___________]
((in[ 1 + inPos] & 137438953471L) >>> 11)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________65432109___________________]
((in[ 1 + inPos] & 137438953471L) >>> 19)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__43210987___________________________]
((in[ 1 + inPos] & 137438953471L) >>> 27)) & 255);
out[ 9 + outPos] = (byte)((
// [______10]
// [65___________________________________]
((in[ 1 + inPos] & 137438953471L) >>> 35)
| // [765432__]
// [_______________________________543210]
((in[ 2 + inPos] & 137438953471L) << 2)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_______________________32109876______]
((in[ 2 + inPos] & 137438953471L) >>> 6)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_______________10987654______________]
((in[ 2 + inPos] & 137438953471L) >>> 14)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_______98765432______________________]
((in[ 2 + inPos] & 137438953471L) >>> 22)) & 255);
out[13 + outPos] = (byte)((
// [_6543210]
// [6543210______________________________]
((in[ 2 + inPos] & 137438953471L) >>> 30)
| // [7_______]
// [____________________________________0]
((in[ 3 + inPos] & 137438953471L) << 7)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_]
((in[ 3 + inPos] & 137438953471L) >>> 1)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________65432109_________]
((in[ 3 + inPos] & 137438953471L) >>> 9)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________43210987_________________]
((in[ 3 + inPos] & 137438953471L) >>> 17)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____21098765_________________________]
((in[ 3 + inPos] & 137438953471L) >>> 25)) & 255);
out[18 + outPos] = (byte)((
// [____3210]
// [6543_________________________________]
((in[ 3 + inPos] & 137438953471L) >>> 33)
| // [7654____]
// [_________________________________3210]
((in[ 4 + inPos] & 137438953471L) << 4)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_________________________10987654____]
((in[ 4 + inPos] & 137438953471L) >>> 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_________________98765432____________]
((in[ 4 + inPos] & 137438953471L) >>> 12)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_________76543210____________________]
((in[ 4 + inPos] & 137438953471L) >>> 20)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_54321098____________________________]
((in[ 4 + inPos] & 137438953471L) >>> 28)) & 255);
out[23 + outPos] = (byte)((
// [_______0]
// [6____________________________________]
((in[ 4 + inPos] & 137438953471L) >>> 36)
| // [7654321_]
// [______________________________6543210]
((in[ 5 + inPos] & 137438953471L) << 1)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [______________________43210987_______]
((in[ 5 + inPos] & 137438953471L) >>> 7)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [______________21098765_______________]
((in[ 5 + inPos] & 137438953471L) >>> 15)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______09876543_______________________]
((in[ 5 + inPos] & 137438953471L) >>> 23)) & 255);
out[27 + outPos] = (byte)((
// [__543210]
// [654321_______________________________]
((in[ 5 + inPos] & 137438953471L) >>> 31)
| // [76______]
// [___________________________________10]
((in[ 6 + inPos] & 137438953471L) << 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___________________________98765432__]
((in[ 6 + inPos] & 137438953471L) >>> 2)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [___________________76543210__________]
((in[ 6 + inPos] & 137438953471L) >>> 10)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [___________54321098__________________]
((in[ 6 + inPos] & 137438953471L) >>> 18)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [___32109876__________________________]
((in[ 6 + inPos] & 137438953471L) >>> 26)) & 255);
out[32 + outPos] = (byte)((
// [_____210]
// [654__________________________________]
((in[ 6 + inPos] & 137438953471L) >>> 34)
| // [76543___]
// [________________________________43210]
((in[ 7 + inPos] & 137438953471L) << 3)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________21098765_____]
((in[ 7 + inPos] & 137438953471L) >>> 5)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________09876543_____________]
((in[ 7 + inPos] & 137438953471L) >>> 13)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________87654321_____________________]
((in[ 7 + inPos] & 137438953471L) >>> 21)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [65432109_____________________________]
((in[ 7 + inPos] & 137438953471L) >>> 29)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210]
((in[ 8 + inPos] & 137438953471L))) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_____________________54321098________]
((in[ 8 + inPos] & 137438953471L) >>> 8)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____________32109876________________]
((in[ 8 + inPos] & 137438953471L) >>> 16)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_____10987654________________________]
((in[ 8 + inPos] & 137438953471L) >>> 24)) & 255);
out[41 + outPos] = (byte)((
// [___43210]
// [65432________________________________]
((in[ 8 + inPos] & 137438953471L) >>> 32)
| // [765_____]
// [__________________________________210]
((in[ 9 + inPos] & 137438953471L) << 5)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________09876543___]
((in[ 9 + inPos] & 137438953471L) >>> 3)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________87654321___________]
((in[ 9 + inPos] & 137438953471L) >>> 11)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________65432109___________________]
((in[ 9 + inPos] & 137438953471L) >>> 19)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__43210987___________________________]
((in[ 9 + inPos] & 137438953471L) >>> 27)) & 255);
out[46 + outPos] = (byte)((
// [______10]
// [65___________________________________]
((in[ 9 + inPos] & 137438953471L) >>> 35)
| // [765432__]
// [_______________________________543210]
((in[10 + inPos] & 137438953471L) << 2)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______________________32109876______]
((in[10 + inPos] & 137438953471L) >>> 6)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______________10987654______________]
((in[10 + inPos] & 137438953471L) >>> 14)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_______98765432______________________]
((in[10 + inPos] & 137438953471L) >>> 22)) & 255);
out[50 + outPos] = (byte)((
// [_6543210]
// [6543210______________________________]
((in[10 + inPos] & 137438953471L) >>> 30)
| // [7_______]
// [____________________________________0]
((in[11 + inPos] & 137438953471L) << 7)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_]
((in[11 + inPos] & 137438953471L) >>> 1)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [____________________65432109_________]
((in[11 + inPos] & 137438953471L) >>> 9)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [____________43210987_________________]
((in[11 + inPos] & 137438953471L) >>> 17)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [____21098765_________________________]
((in[11 + inPos] & 137438953471L) >>> 25)) & 255);
out[55 + outPos] = (byte)((
// [____3210]
// [6543_________________________________]
((in[11 + inPos] & 137438953471L) >>> 33)
| // [7654____]
// [_________________________________3210]
((in[12 + inPos] & 137438953471L) << 4)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [_________________________10987654____]
((in[12 + inPos] & 137438953471L) >>> 4)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_________________98765432____________]
((in[12 + inPos] & 137438953471L) >>> 12)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_________76543210____________________]
((in[12 + inPos] & 137438953471L) >>> 20)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_54321098____________________________]
((in[12 + inPos] & 137438953471L) >>> 28)) & 255);
out[60 + outPos] = (byte)((
// [_______0]
// [6____________________________________]
((in[12 + inPos] & 137438953471L) >>> 36)
| // [7654321_]
// [______________________________6543210]
((in[13 + inPos] & 137438953471L) << 1)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [______________________43210987_______]
((in[13 + inPos] & 137438953471L) >>> 7)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______________21098765_______________]
((in[13 + inPos] & 137438953471L) >>> 15)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [______09876543_______________________]
((in[13 + inPos] & 137438953471L) >>> 23)) & 255);
out[64 + outPos] = (byte)((
// [__543210]
// [654321_______________________________]
((in[13 + inPos] & 137438953471L) >>> 31)
| // [76______]
// [___________________________________10]
((in[14 + inPos] & 137438953471L) << 6)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [___________________________98765432__]
((in[14 + inPos] & 137438953471L) >>> 2)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [___________________76543210__________]
((in[14 + inPos] & 137438953471L) >>> 10)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [___________54321098__________________]
((in[14 + inPos] & 137438953471L) >>> 18)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [___32109876__________________________]
((in[14 + inPos] & 137438953471L) >>> 26)) & 255);
out[69 + outPos] = (byte)((
// [_____210]
// [654__________________________________]
((in[14 + inPos] & 137438953471L) >>> 34)
| // [76543___]
// [________________________________43210]
((in[15 + inPos] & 137438953471L) << 3)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________________________21098765_____]
((in[15 + inPos] & 137438953471L) >>> 5)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [________________09876543_____________]
((in[15 + inPos] & 137438953471L) >>> 13)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________87654321_____________________]
((in[15 + inPos] & 137438953471L) >>> 21)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [65432109_____________________________]
((in[15 + inPos] & 137438953471L) >>> 29)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210]
((in[16 + inPos] & 137438953471L))) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_____________________54321098________]
((in[16 + inPos] & 137438953471L) >>> 8)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_____________32109876________________]
((in[16 + inPos] & 137438953471L) >>> 16)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_____10987654________________________]
((in[16 + inPos] & 137438953471L) >>> 24)) & 255);
out[78 + outPos] = (byte)((
// [___43210]
// [65432________________________________]
((in[16 + inPos] & 137438953471L) >>> 32)
| // [765_____]
// [__________________________________210]
((in[17 + inPos] & 137438953471L) << 5)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________________________09876543___]
((in[17 + inPos] & 137438953471L) >>> 3)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__________________87654321___________]
((in[17 + inPos] & 137438953471L) >>> 11)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [__________65432109___________________]
((in[17 + inPos] & 137438953471L) >>> 19)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [__43210987___________________________]
((in[17 + inPos] & 137438953471L) >>> 27)) & 255);
out[83 + outPos] = (byte)((
// [______10]
// [65___________________________________]
((in[17 + inPos] & 137438953471L) >>> 35)
| // [765432__]
// [_______________________________543210]
((in[18 + inPos] & 137438953471L) << 2)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_______________________32109876______]
((in[18 + inPos] & 137438953471L) >>> 6)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_______________10987654______________]
((in[18 + inPos] & 137438953471L) >>> 14)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_______98765432______________________]
((in[18 + inPos] & 137438953471L) >>> 22)) & 255);
out[87 + outPos] = (byte)((
// [_6543210]
// [6543210______________________________]
((in[18 + inPos] & 137438953471L) >>> 30)
| // [7_______]
// [____________________________________0]
((in[19 + inPos] & 137438953471L) << 7)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_]
((in[19 + inPos] & 137438953471L) >>> 1)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [____________________65432109_________]
((in[19 + inPos] & 137438953471L) >>> 9)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________43210987_________________]
((in[19 + inPos] & 137438953471L) >>> 17)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____21098765_________________________]
((in[19 + inPos] & 137438953471L) >>> 25)) & 255);
out[92 + outPos] = (byte)((
// [____3210]
// [6543_________________________________]
((in[19 + inPos] & 137438953471L) >>> 33)
| // [7654____]
// [_________________________________3210]
((in[20 + inPos] & 137438953471L) << 4)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_________________________10987654____]
((in[20 + inPos] & 137438953471L) >>> 4)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_________________98765432____________]
((in[20 + inPos] & 137438953471L) >>> 12)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_________76543210____________________]
((in[20 + inPos] & 137438953471L) >>> 20)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [_54321098____________________________]
((in[20 + inPos] & 137438953471L) >>> 28)) & 255);
out[97 + outPos] = (byte)((
// [_______0]
// [6____________________________________]
((in[20 + inPos] & 137438953471L) >>> 36)
| // [7654321_]
// [______________________________6543210]
((in[21 + inPos] & 137438953471L) << 1)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______________________43210987_______]
((in[21 + inPos] & 137438953471L) >>> 7)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [______________21098765_______________]
((in[21 + inPos] & 137438953471L) >>> 15)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [______09876543_______________________]
((in[21 + inPos] & 137438953471L) >>> 23)) & 255);
out[101 + outPos] = (byte)((
// [__543210]
// [654321_______________________________]
((in[21 + inPos] & 137438953471L) >>> 31)
| // [76______]
// [___________________________________10]
((in[22 + inPos] & 137438953471L) << 6)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [___________________________98765432__]
((in[22 + inPos] & 137438953471L) >>> 2)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [___________________76543210__________]
((in[22 + inPos] & 137438953471L) >>> 10)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [___________54321098__________________]
((in[22 + inPos] & 137438953471L) >>> 18)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [___32109876__________________________]
((in[22 + inPos] & 137438953471L) >>> 26)) & 255);
out[106 + outPos] = (byte)((
// [_____210]
// [654__________________________________]
((in[22 + inPos] & 137438953471L) >>> 34)
| // [76543___]
// [________________________________43210]
((in[23 + inPos] & 137438953471L) << 3)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________________21098765_____]
((in[23 + inPos] & 137438953471L) >>> 5)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________09876543_____________]
((in[23 + inPos] & 137438953471L) >>> 13)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________87654321_____________________]
((in[23 + inPos] & 137438953471L) >>> 21)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [65432109_____________________________]
((in[23 + inPos] & 137438953471L) >>> 29)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210]
((in[24 + inPos] & 137438953471L))) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [_____________________54321098________]
((in[24 + inPos] & 137438953471L) >>> 8)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [_____________32109876________________]
((in[24 + inPos] & 137438953471L) >>> 16)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_____10987654________________________]
((in[24 + inPos] & 137438953471L) >>> 24)) & 255);
out[115 + outPos] = (byte)((
// [___43210]
// [65432________________________________]
((in[24 + inPos] & 137438953471L) >>> 32)
| // [765_____]
// [__________________________________210]
((in[25 + inPos] & 137438953471L) << 5)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [__________________________09876543___]
((in[25 + inPos] & 137438953471L) >>> 3)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [__________________87654321___________]
((in[25 + inPos] & 137438953471L) >>> 11)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [__________65432109___________________]
((in[25 + inPos] & 137438953471L) >>> 19)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [__43210987___________________________]
((in[25 + inPos] & 137438953471L) >>> 27)) & 255);
out[120 + outPos] = (byte)((
// [______10]
// [65___________________________________]
((in[25 + inPos] & 137438953471L) >>> 35)
| // [765432__]
// [_______________________________543210]
((in[26 + inPos] & 137438953471L) << 2)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [_______________________32109876______]
((in[26 + inPos] & 137438953471L) >>> 6)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [_______________10987654______________]
((in[26 + inPos] & 137438953471L) >>> 14)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_______98765432______________________]
((in[26 + inPos] & 137438953471L) >>> 22)) & 255);
out[124 + outPos] = (byte)((
// [_6543210]
// [6543210______________________________]
((in[26 + inPos] & 137438953471L) >>> 30)
| // [7_______]
// [____________________________________0]
((in[27 + inPos] & 137438953471L) << 7)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_]
((in[27 + inPos] & 137438953471L) >>> 1)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____________________65432109_________]
((in[27 + inPos] & 137438953471L) >>> 9)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [____________43210987_________________]
((in[27 + inPos] & 137438953471L) >>> 17)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [____21098765_________________________]
((in[27 + inPos] & 137438953471L) >>> 25)) & 255);
out[129 + outPos] = (byte)((
// [____3210]
// [6543_________________________________]
((in[27 + inPos] & 137438953471L) >>> 33)
| // [7654____]
// [_________________________________3210]
((in[28 + inPos] & 137438953471L) << 4)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [_________________________10987654____]
((in[28 + inPos] & 137438953471L) >>> 4)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [_________________98765432____________]
((in[28 + inPos] & 137438953471L) >>> 12)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [_________76543210____________________]
((in[28 + inPos] & 137438953471L) >>> 20)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [_54321098____________________________]
((in[28 + inPos] & 137438953471L) >>> 28)) & 255);
out[134 + outPos] = (byte)((
// [_______0]
// [6____________________________________]
((in[28 + inPos] & 137438953471L) >>> 36)
| // [7654321_]
// [______________________________6543210]
((in[29 + inPos] & 137438953471L) << 1)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________________43210987_______]
((in[29 + inPos] & 137438953471L) >>> 7)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______________21098765_______________]
((in[29 + inPos] & 137438953471L) >>> 15)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [______09876543_______________________]
((in[29 + inPos] & 137438953471L) >>> 23)) & 255);
out[138 + outPos] = (byte)((
// [__543210]
// [654321_______________________________]
((in[29 + inPos] & 137438953471L) >>> 31)
| // [76______]
// [___________________________________10]
((in[30 + inPos] & 137438953471L) << 6)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [___________________________98765432__]
((in[30 + inPos] & 137438953471L) >>> 2)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [___________________76543210__________]
((in[30 + inPos] & 137438953471L) >>> 10)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [___________54321098__________________]
((in[30 + inPos] & 137438953471L) >>> 18)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [___32109876__________________________]
((in[30 + inPos] & 137438953471L) >>> 26)) & 255);
out[143 + outPos] = (byte)((
// [_____210]
// [654__________________________________]
((in[30 + inPos] & 137438953471L) >>> 34)
| // [76543___]
// [________________________________43210]
((in[31 + inPos] & 137438953471L) << 3)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________________21098765_____]
((in[31 + inPos] & 137438953471L) >>> 5)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________09876543_____________]
((in[31 + inPos] & 137438953471L) >>> 13)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________87654321_____________________]
((in[31 + inPos] & 137438953471L) >>> 21)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [65432109_____________________________]
((in[31 + inPos] & 137438953471L) >>> 29)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in[ 4 + inPos]) << 32) & 137438953471L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in[ 4 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in[ 5 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in[ 6 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in[ 7 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in[ 8 + inPos]) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in[ 9 + inPos]) << 35) & 137438953471L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in[ 9 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in[10 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in[11 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in[12 + inPos]) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in[13 + inPos]) << 30) & 137438953471L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in[13 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in[14 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in[15 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in[16 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in[17 + inPos]) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in[18 + inPos]) << 33) & 137438953471L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in[18 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in[19 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in[20 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in[21 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in[22 + inPos]) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in[23 + inPos]) << 36) & 137438953471L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in[23 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in[24 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in[25 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in[26 + inPos]) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in[27 + inPos]) << 31) & 137438953471L);
out[ 6 + outPos] =
// [76______]
// [___________________________________10]
((((long)in[27 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in[28 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in[29 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in[30 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in[31 + inPos]) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in[32 + inPos]) << 34) & 137438953471L);
out[ 7 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in[32 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in[33 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in[34 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in[35 + inPos]) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in[36 + inPos]) << 29) & 137438953471L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 137438953471L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in.get( 4 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in.get( 5 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in.get( 6 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in.get( 7 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in.get( 8 + inPos)) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in.get( 9 + inPos)) << 35) & 137438953471L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in.get( 9 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in.get(10 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in.get(11 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in.get(12 + inPos)) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in.get(13 + inPos)) << 30) & 137438953471L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in.get(13 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in.get(14 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in.get(15 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in.get(16 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in.get(17 + inPos)) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in.get(18 + inPos)) << 33) & 137438953471L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in.get(18 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in.get(19 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in.get(20 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in.get(21 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in.get(22 + inPos)) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in.get(23 + inPos)) << 36) & 137438953471L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in.get(23 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in.get(24 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in.get(25 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in.get(26 + inPos)) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in.get(27 + inPos)) << 31) & 137438953471L);
out[ 6 + outPos] =
// [76______]
// [___________________________________10]
((((long)in.get(27 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in.get(28 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in.get(29 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in.get(30 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in.get(31 + inPos)) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in.get(32 + inPos)) << 34) & 137438953471L);
out[ 7 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in.get(32 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in.get(33 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in.get(34 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in.get(35 + inPos)) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in.get(36 + inPos)) << 29) & 137438953471L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in[ 4 + inPos]) << 32) & 137438953471L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in[ 4 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in[ 5 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in[ 6 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in[ 7 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in[ 8 + inPos]) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in[ 9 + inPos]) << 35) & 137438953471L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in[ 9 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in[10 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in[11 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in[12 + inPos]) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in[13 + inPos]) << 30) & 137438953471L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in[13 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in[14 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in[15 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in[16 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in[17 + inPos]) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in[18 + inPos]) << 33) & 137438953471L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in[18 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in[19 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in[20 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in[21 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in[22 + inPos]) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in[23 + inPos]) << 36) & 137438953471L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in[23 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in[24 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in[25 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in[26 + inPos]) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in[27 + inPos]) << 31) & 137438953471L);
out[ 6 + outPos] =
// [76______]
// [___________________________________10]
((((long)in[27 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in[28 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in[29 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in[30 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in[31 + inPos]) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in[32 + inPos]) << 34) & 137438953471L);
out[ 7 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in[32 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in[33 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in[34 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in[35 + inPos]) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in[36 + inPos]) << 29) & 137438953471L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in[37 + inPos]) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in[38 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in[39 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in[40 + inPos]) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in[41 + inPos]) << 32) & 137438953471L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in[41 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in[42 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in[43 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in[44 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in[45 + inPos]) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in[46 + inPos]) << 35) & 137438953471L);
out[10 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in[46 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in[47 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in[48 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in[49 + inPos]) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in[50 + inPos]) << 30) & 137438953471L);
out[11 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in[50 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in[51 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in[52 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in[53 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in[54 + inPos]) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in[55 + inPos]) << 33) & 137438953471L);
out[12 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in[55 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in[56 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in[57 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in[58 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in[59 + inPos]) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in[60 + inPos]) << 36) & 137438953471L);
out[13 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in[60 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in[61 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in[62 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in[63 + inPos]) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in[64 + inPos]) << 31) & 137438953471L);
out[14 + outPos] =
// [76______]
// [___________________________________10]
((((long)in[64 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in[65 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in[66 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in[67 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in[68 + inPos]) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in[69 + inPos]) << 34) & 137438953471L);
out[15 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in[69 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in[70 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in[71 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in[72 + inPos]) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in[73 + inPos]) << 29) & 137438953471L);
out[16 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in[74 + inPos]) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in[75 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in[76 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in[77 + inPos]) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in[78 + inPos]) << 32) & 137438953471L);
out[17 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in[78 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in[79 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in[80 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in[81 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in[82 + inPos]) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in[83 + inPos]) << 35) & 137438953471L);
out[18 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in[83 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in[84 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in[85 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in[86 + inPos]) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in[87 + inPos]) << 30) & 137438953471L);
out[19 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in[87 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in[88 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in[89 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in[90 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in[91 + inPos]) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in[92 + inPos]) << 33) & 137438953471L);
out[20 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in[92 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in[93 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in[94 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in[95 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in[96 + inPos]) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in[97 + inPos]) << 36) & 137438953471L);
out[21 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in[97 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in[98 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in[99 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in[100 + inPos]) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in[101 + inPos]) << 31) & 137438953471L);
out[22 + outPos] =
// [76______]
// [___________________________________10]
((((long)in[101 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in[102 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in[103 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in[104 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in[105 + inPos]) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in[106 + inPos]) << 34) & 137438953471L);
out[23 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in[106 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in[107 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in[108 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in[109 + inPos]) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in[110 + inPos]) << 29) & 137438953471L);
out[24 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in[111 + inPos]) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in[112 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in[113 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in[114 + inPos]) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in[115 + inPos]) << 32) & 137438953471L);
out[25 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in[115 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in[116 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in[117 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in[118 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in[119 + inPos]) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in[120 + inPos]) << 35) & 137438953471L);
out[26 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in[120 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in[121 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in[122 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in[123 + inPos]) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in[124 + inPos]) << 30) & 137438953471L);
out[27 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in[124 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in[125 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in[126 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in[127 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in[128 + inPos]) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in[129 + inPos]) << 33) & 137438953471L);
out[28 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in[129 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in[130 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in[131 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in[132 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in[133 + inPos]) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in[134 + inPos]) << 36) & 137438953471L);
out[29 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in[134 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in[135 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in[136 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in[137 + inPos]) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in[138 + inPos]) << 31) & 137438953471L);
out[30 + outPos] =
// [76______]
// [___________________________________10]
((((long)in[138 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in[139 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in[140 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in[141 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in[142 + inPos]) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in[143 + inPos]) << 34) & 137438953471L);
out[31 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in[143 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in[144 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in[145 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in[146 + inPos]) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in[147 + inPos]) << 29) & 137438953471L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 137438953471L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in.get( 4 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in.get( 5 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in.get( 6 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in.get( 7 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in.get( 8 + inPos)) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in.get( 9 + inPos)) << 35) & 137438953471L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in.get( 9 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in.get(10 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in.get(11 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in.get(12 + inPos)) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in.get(13 + inPos)) << 30) & 137438953471L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in.get(13 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in.get(14 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in.get(15 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in.get(16 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in.get(17 + inPos)) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in.get(18 + inPos)) << 33) & 137438953471L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in.get(18 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in.get(19 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in.get(20 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in.get(21 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in.get(22 + inPos)) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in.get(23 + inPos)) << 36) & 137438953471L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in.get(23 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in.get(24 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in.get(25 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in.get(26 + inPos)) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in.get(27 + inPos)) << 31) & 137438953471L);
out[ 6 + outPos] =
// [76______]
// [___________________________________10]
((((long)in.get(27 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in.get(28 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in.get(29 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in.get(30 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in.get(31 + inPos)) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in.get(32 + inPos)) << 34) & 137438953471L);
out[ 7 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in.get(32 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in.get(33 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in.get(34 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in.get(35 + inPos)) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in.get(36 + inPos)) << 29) & 137438953471L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in.get(37 + inPos)) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in.get(38 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in.get(39 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in.get(40 + inPos)) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in.get(41 + inPos)) << 32) & 137438953471L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in.get(41 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in.get(42 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in.get(43 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in.get(44 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in.get(45 + inPos)) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in.get(46 + inPos)) << 35) & 137438953471L);
out[10 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in.get(46 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in.get(47 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in.get(48 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in.get(49 + inPos)) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in.get(50 + inPos)) << 30) & 137438953471L);
out[11 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in.get(50 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in.get(51 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in.get(52 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in.get(53 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in.get(54 + inPos)) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in.get(55 + inPos)) << 33) & 137438953471L);
out[12 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in.get(55 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in.get(56 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in.get(57 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in.get(58 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in.get(59 + inPos)) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in.get(60 + inPos)) << 36) & 137438953471L);
out[13 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in.get(60 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in.get(61 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in.get(62 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in.get(63 + inPos)) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in.get(64 + inPos)) << 31) & 137438953471L);
out[14 + outPos] =
// [76______]
// [___________________________________10]
((((long)in.get(64 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in.get(65 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in.get(66 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in.get(67 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in.get(68 + inPos)) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in.get(69 + inPos)) << 34) & 137438953471L);
out[15 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in.get(69 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in.get(70 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in.get(71 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in.get(72 + inPos)) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in.get(73 + inPos)) << 29) & 137438953471L);
out[16 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in.get(74 + inPos)) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in.get(75 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in.get(76 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in.get(77 + inPos)) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in.get(78 + inPos)) << 32) & 137438953471L);
out[17 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in.get(78 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in.get(79 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in.get(80 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in.get(81 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in.get(82 + inPos)) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in.get(83 + inPos)) << 35) & 137438953471L);
out[18 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in.get(83 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in.get(84 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in.get(85 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in.get(86 + inPos)) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in.get(87 + inPos)) << 30) & 137438953471L);
out[19 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in.get(87 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in.get(88 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in.get(89 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in.get(90 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in.get(91 + inPos)) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in.get(92 + inPos)) << 33) & 137438953471L);
out[20 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in.get(92 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in.get(93 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in.get(94 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in.get(95 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in.get(96 + inPos)) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in.get(97 + inPos)) << 36) & 137438953471L);
out[21 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in.get(97 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in.get(98 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in.get(99 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in.get(100 + inPos)) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in.get(101 + inPos)) << 31) & 137438953471L);
out[22 + outPos] =
// [76______]
// [___________________________________10]
((((long)in.get(101 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in.get(102 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in.get(103 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in.get(104 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in.get(105 + inPos)) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in.get(106 + inPos)) << 34) & 137438953471L);
out[23 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in.get(106 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in.get(107 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in.get(108 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in.get(109 + inPos)) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in.get(110 + inPos)) << 29) & 137438953471L);
out[24 + outPos] =
// [76543210]
// [_____________________________76543210]
((((long)in.get(111 + inPos)) ) & 255L)
| // [76543210]
// [_____________________54321098________]
((((long)in.get(112 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________32109876________________]
((((long)in.get(113 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____10987654________________________]
((((long)in.get(114 + inPos)) << 24) & 4294967295L)
| // [___43210]
// [65432________________________________]
((((long)in.get(115 + inPos)) << 32) & 137438953471L);
out[25 + outPos] =
// [765_____]
// [__________________________________210]
((((long)in.get(115 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________09876543___]
((((long)in.get(116 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________87654321___________]
((((long)in.get(117 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________65432109___________________]
((((long)in.get(118 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__43210987___________________________]
((((long)in.get(119 + inPos)) << 27) & 34359738367L)
| // [______10]
// [65___________________________________]
((((long)in.get(120 + inPos)) << 35) & 137438953471L);
out[26 + outPos] =
// [765432__]
// [_______________________________543210]
((((long)in.get(120 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________32109876______]
((((long)in.get(121 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________10987654______________]
((((long)in.get(122 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______98765432______________________]
((((long)in.get(123 + inPos)) << 22) & 1073741823L)
| // [_6543210]
// [6543210______________________________]
((((long)in.get(124 + inPos)) << 30) & 137438953471L);
out[27 + outPos] =
// [7_______]
// [____________________________________0]
((((long)in.get(124 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________87654321_]
((((long)in.get(125 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________65432109_________]
((((long)in.get(126 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________43210987_________________]
((((long)in.get(127 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____21098765_________________________]
((((long)in.get(128 + inPos)) << 25) & 8589934591L)
| // [____3210]
// [6543_________________________________]
((((long)in.get(129 + inPos)) << 33) & 137438953471L);
out[28 + outPos] =
// [7654____]
// [_________________________________3210]
((((long)in.get(129 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________10987654____]
((((long)in.get(130 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________98765432____________]
((((long)in.get(131 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________76543210____________________]
((((long)in.get(132 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_54321098____________________________]
((((long)in.get(133 + inPos)) << 28) & 68719476735L)
| // [_______0]
// [6____________________________________]
((((long)in.get(134 + inPos)) << 36) & 137438953471L);
out[29 + outPos] =
// [7654321_]
// [______________________________6543210]
((((long)in.get(134 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________43210987_______]
((((long)in.get(135 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________21098765_______________]
((((long)in.get(136 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______09876543_______________________]
((((long)in.get(137 + inPos)) << 23) & 2147483647L)
| // [__543210]
// [654321_______________________________]
((((long)in.get(138 + inPos)) << 31) & 137438953471L);
out[30 + outPos] =
// [76______]
// [___________________________________10]
((((long)in.get(138 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________98765432__]
((((long)in.get(139 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________76543210__________]
((((long)in.get(140 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________54321098__________________]
((((long)in.get(141 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___32109876__________________________]
((((long)in.get(142 + inPos)) << 26) & 17179869183L)
| // [_____210]
// [654__________________________________]
((((long)in.get(143 + inPos)) << 34) & 137438953471L);
out[31 + outPos] =
// [76543___]
// [________________________________43210]
((((long)in.get(143 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________21098765_____]
((((long)in.get(144 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________09876543_____________]
((((long)in.get(145 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________87654321_____________________]
((((long)in.get(146 + inPos)) << 21) & 536870911L)
| // [76543210]
// [65432109_____________________________]
((((long)in.get(147 + inPos)) << 29) & 137438953471L);
}
}
private static final class Packer38 extends BytePackerForLong {
private Packer38() {
super(38);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[ 0 + inPos] & 274877906943L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[ 0 + inPos] & 274877906943L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[ 0 + inPos] & 274877906943L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[ 0 + inPos] & 274877906943L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[ 0 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[ 1 + inPos] & 274877906943L) << 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[ 1 + inPos] & 274877906943L) >>> 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[ 1 + inPos] & 274877906943L) >>> 10)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[ 1 + inPos] & 274877906943L) >>> 18)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[ 1 + inPos] & 274877906943L) >>> 26)) & 255);
out[ 9 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[ 1 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[ 2 + inPos] & 274877906943L) << 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[ 2 + inPos] & 274877906943L) >>> 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[ 2 + inPos] & 274877906943L) >>> 12)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[ 2 + inPos] & 274877906943L) >>> 20)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[ 2 + inPos] & 274877906943L) >>> 28)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[ 2 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[ 3 + inPos] & 274877906943L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[ 3 + inPos] & 274877906943L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[ 3 + inPos] & 274877906943L) >>> 14)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[ 3 + inPos] & 274877906943L) >>> 22)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[ 3 + inPos] & 274877906943L) >>> 30)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[ 4 + inPos] & 274877906943L))) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[ 4 + inPos] & 274877906943L) >>> 8)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[ 4 + inPos] & 274877906943L) >>> 16)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[ 4 + inPos] & 274877906943L) >>> 24)) & 255);
out[23 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[ 4 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[ 5 + inPos] & 274877906943L) << 6)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[ 5 + inPos] & 274877906943L) >>> 2)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[ 5 + inPos] & 274877906943L) >>> 10)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[ 5 + inPos] & 274877906943L) >>> 18)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[ 5 + inPos] & 274877906943L) >>> 26)) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[ 5 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[ 6 + inPos] & 274877906943L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[ 6 + inPos] & 274877906943L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[ 6 + inPos] & 274877906943L) >>> 12)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[ 6 + inPos] & 274877906943L) >>> 20)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[ 6 + inPos] & 274877906943L) >>> 28)) & 255);
out[33 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[ 6 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[ 7 + inPos] & 274877906943L) << 2)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[ 7 + inPos] & 274877906943L) >>> 6)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[ 7 + inPos] & 274877906943L) >>> 14)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[ 7 + inPos] & 274877906943L) >>> 22)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[ 7 + inPos] & 274877906943L) >>> 30)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[ 0 + inPos] & 274877906943L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[ 0 + inPos] & 274877906943L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[ 0 + inPos] & 274877906943L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[ 0 + inPos] & 274877906943L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[ 0 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[ 1 + inPos] & 274877906943L) << 6)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[ 1 + inPos] & 274877906943L) >>> 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[ 1 + inPos] & 274877906943L) >>> 10)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[ 1 + inPos] & 274877906943L) >>> 18)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[ 1 + inPos] & 274877906943L) >>> 26)) & 255);
out[ 9 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[ 1 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[ 2 + inPos] & 274877906943L) << 4)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[ 2 + inPos] & 274877906943L) >>> 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[ 2 + inPos] & 274877906943L) >>> 12)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[ 2 + inPos] & 274877906943L) >>> 20)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[ 2 + inPos] & 274877906943L) >>> 28)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[ 2 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[ 3 + inPos] & 274877906943L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[ 3 + inPos] & 274877906943L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[ 3 + inPos] & 274877906943L) >>> 14)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[ 3 + inPos] & 274877906943L) >>> 22)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[ 3 + inPos] & 274877906943L) >>> 30)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[ 4 + inPos] & 274877906943L))) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[ 4 + inPos] & 274877906943L) >>> 8)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[ 4 + inPos] & 274877906943L) >>> 16)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[ 4 + inPos] & 274877906943L) >>> 24)) & 255);
out[23 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[ 4 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[ 5 + inPos] & 274877906943L) << 6)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[ 5 + inPos] & 274877906943L) >>> 2)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[ 5 + inPos] & 274877906943L) >>> 10)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[ 5 + inPos] & 274877906943L) >>> 18)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[ 5 + inPos] & 274877906943L) >>> 26)) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[ 5 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[ 6 + inPos] & 274877906943L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[ 6 + inPos] & 274877906943L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[ 6 + inPos] & 274877906943L) >>> 12)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[ 6 + inPos] & 274877906943L) >>> 20)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[ 6 + inPos] & 274877906943L) >>> 28)) & 255);
out[33 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[ 6 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[ 7 + inPos] & 274877906943L) << 2)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[ 7 + inPos] & 274877906943L) >>> 6)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[ 7 + inPos] & 274877906943L) >>> 14)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[ 7 + inPos] & 274877906943L) >>> 22)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[ 7 + inPos] & 274877906943L) >>> 30)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[ 8 + inPos] & 274877906943L))) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[ 8 + inPos] & 274877906943L) >>> 8)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[ 8 + inPos] & 274877906943L) >>> 16)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[ 8 + inPos] & 274877906943L) >>> 24)) & 255);
out[42 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[ 8 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[ 9 + inPos] & 274877906943L) << 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[ 9 + inPos] & 274877906943L) >>> 2)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[ 9 + inPos] & 274877906943L) >>> 10)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[ 9 + inPos] & 274877906943L) >>> 18)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[ 9 + inPos] & 274877906943L) >>> 26)) & 255);
out[47 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[ 9 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[10 + inPos] & 274877906943L) << 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[10 + inPos] & 274877906943L) >>> 4)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[10 + inPos] & 274877906943L) >>> 12)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[10 + inPos] & 274877906943L) >>> 20)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[10 + inPos] & 274877906943L) >>> 28)) & 255);
out[52 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[10 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[11 + inPos] & 274877906943L) << 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[11 + inPos] & 274877906943L) >>> 6)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[11 + inPos] & 274877906943L) >>> 14)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[11 + inPos] & 274877906943L) >>> 22)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[11 + inPos] & 274877906943L) >>> 30)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[12 + inPos] & 274877906943L))) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[12 + inPos] & 274877906943L) >>> 8)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[12 + inPos] & 274877906943L) >>> 16)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[12 + inPos] & 274877906943L) >>> 24)) & 255);
out[61 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[12 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[13 + inPos] & 274877906943L) << 6)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[13 + inPos] & 274877906943L) >>> 2)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[13 + inPos] & 274877906943L) >>> 10)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[13 + inPos] & 274877906943L) >>> 18)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[13 + inPos] & 274877906943L) >>> 26)) & 255);
out[66 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[13 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[14 + inPos] & 274877906943L) << 4)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[14 + inPos] & 274877906943L) >>> 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[14 + inPos] & 274877906943L) >>> 12)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[14 + inPos] & 274877906943L) >>> 20)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[14 + inPos] & 274877906943L) >>> 28)) & 255);
out[71 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[14 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[15 + inPos] & 274877906943L) << 2)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[15 + inPos] & 274877906943L) >>> 6)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[15 + inPos] & 274877906943L) >>> 14)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[15 + inPos] & 274877906943L) >>> 22)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[15 + inPos] & 274877906943L) >>> 30)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[16 + inPos] & 274877906943L))) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[16 + inPos] & 274877906943L) >>> 8)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[16 + inPos] & 274877906943L) >>> 16)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[16 + inPos] & 274877906943L) >>> 24)) & 255);
out[80 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[16 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[17 + inPos] & 274877906943L) << 6)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[17 + inPos] & 274877906943L) >>> 2)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[17 + inPos] & 274877906943L) >>> 10)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[17 + inPos] & 274877906943L) >>> 18)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[17 + inPos] & 274877906943L) >>> 26)) & 255);
out[85 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[17 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[18 + inPos] & 274877906943L) << 4)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[18 + inPos] & 274877906943L) >>> 4)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[18 + inPos] & 274877906943L) >>> 12)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[18 + inPos] & 274877906943L) >>> 20)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[18 + inPos] & 274877906943L) >>> 28)) & 255);
out[90 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[18 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[19 + inPos] & 274877906943L) << 2)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[19 + inPos] & 274877906943L) >>> 6)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[19 + inPos] & 274877906943L) >>> 14)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[19 + inPos] & 274877906943L) >>> 22)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[19 + inPos] & 274877906943L) >>> 30)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[20 + inPos] & 274877906943L))) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[20 + inPos] & 274877906943L) >>> 8)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[20 + inPos] & 274877906943L) >>> 16)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[20 + inPos] & 274877906943L) >>> 24)) & 255);
out[99 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[20 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[21 + inPos] & 274877906943L) << 6)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[21 + inPos] & 274877906943L) >>> 2)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[21 + inPos] & 274877906943L) >>> 10)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[21 + inPos] & 274877906943L) >>> 18)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[21 + inPos] & 274877906943L) >>> 26)) & 255);
out[104 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[21 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[22 + inPos] & 274877906943L) << 4)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[22 + inPos] & 274877906943L) >>> 4)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[22 + inPos] & 274877906943L) >>> 12)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[22 + inPos] & 274877906943L) >>> 20)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[22 + inPos] & 274877906943L) >>> 28)) & 255);
out[109 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[22 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[23 + inPos] & 274877906943L) << 2)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[23 + inPos] & 274877906943L) >>> 6)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[23 + inPos] & 274877906943L) >>> 14)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[23 + inPos] & 274877906943L) >>> 22)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[23 + inPos] & 274877906943L) >>> 30)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[24 + inPos] & 274877906943L))) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[24 + inPos] & 274877906943L) >>> 8)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[24 + inPos] & 274877906943L) >>> 16)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[24 + inPos] & 274877906943L) >>> 24)) & 255);
out[118 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[24 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[25 + inPos] & 274877906943L) << 6)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[25 + inPos] & 274877906943L) >>> 2)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[25 + inPos] & 274877906943L) >>> 10)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[25 + inPos] & 274877906943L) >>> 18)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[25 + inPos] & 274877906943L) >>> 26)) & 255);
out[123 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[25 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[26 + inPos] & 274877906943L) << 4)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[26 + inPos] & 274877906943L) >>> 4)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[26 + inPos] & 274877906943L) >>> 12)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[26 + inPos] & 274877906943L) >>> 20)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[26 + inPos] & 274877906943L) >>> 28)) & 255);
out[128 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[26 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[27 + inPos] & 274877906943L) << 2)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[27 + inPos] & 274877906943L) >>> 6)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[27 + inPos] & 274877906943L) >>> 14)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[27 + inPos] & 274877906943L) >>> 22)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[27 + inPos] & 274877906943L) >>> 30)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [______________________________76543210]
((in[28 + inPos] & 274877906943L))) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [______________________54321098________]
((in[28 + inPos] & 274877906943L) >>> 8)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________32109876________________]
((in[28 + inPos] & 274877906943L) >>> 16)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______10987654________________________]
((in[28 + inPos] & 274877906943L) >>> 24)) & 255);
out[137 + outPos] = (byte)((
// [__543210]
// [765432________________________________]
((in[28 + inPos] & 274877906943L) >>> 32)
| // [76______]
// [____________________________________10]
((in[29 + inPos] & 274877906943L) << 6)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [____________________________98765432__]
((in[29 + inPos] & 274877906943L) >>> 2)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [____________________76543210__________]
((in[29 + inPos] & 274877906943L) >>> 10)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [____________54321098__________________]
((in[29 + inPos] & 274877906943L) >>> 18)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [____32109876__________________________]
((in[29 + inPos] & 274877906943L) >>> 26)) & 255);
out[142 + outPos] = (byte)((
// [____3210]
// [7654__________________________________]
((in[29 + inPos] & 274877906943L) >>> 34)
| // [7654____]
// [__________________________________3210]
((in[30 + inPos] & 274877906943L) << 4)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [__________________________10987654____]
((in[30 + inPos] & 274877906943L) >>> 4)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [__________________98765432____________]
((in[30 + inPos] & 274877906943L) >>> 12)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__________76543210____________________]
((in[30 + inPos] & 274877906943L) >>> 20)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [__54321098____________________________]
((in[30 + inPos] & 274877906943L) >>> 28)) & 255);
out[147 + outPos] = (byte)((
// [______10]
// [76____________________________________]
((in[30 + inPos] & 274877906943L) >>> 36)
| // [765432__]
// [________________________________543210]
((in[31 + inPos] & 274877906943L) << 2)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________________________32109876______]
((in[31 + inPos] & 274877906943L) >>> 6)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________10987654______________]
((in[31 + inPos] & 274877906943L) >>> 14)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________98765432______________________]
((in[31 + inPos] & 274877906943L) >>> 22)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [76543210______________________________]
((in[31 + inPos] & 274877906943L) >>> 30)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 274877906943L);
out[ 1 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[ 4 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[ 5 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[ 6 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[ 7 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[ 8 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[ 9 + inPos]) << 34) & 274877906943L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[ 9 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[10 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[11 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[12 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[13 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[14 + inPos]) << 36) & 274877906943L);
out[ 3 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[16 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[17 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[18 + inPos]) << 30) & 274877906943L);
out[ 4 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[19 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[20 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[21 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[22 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[23 + inPos]) << 32) & 274877906943L);
out[ 5 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[23 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[24 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[25 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[26 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[27 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[28 + inPos]) << 34) & 274877906943L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[29 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[30 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[31 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[32 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[33 + inPos]) << 36) & 274877906943L);
out[ 7 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[33 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[34 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[35 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[36 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[37 + inPos]) << 30) & 274877906943L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 274877906943L);
out[ 1 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get( 4 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get( 5 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get( 6 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get( 7 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get( 8 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get( 9 + inPos)) << 34) & 274877906943L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get( 9 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(10 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(11 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(12 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(13 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(14 + inPos)) << 36) & 274877906943L);
out[ 3 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(16 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(17 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(18 + inPos)) << 30) & 274877906943L);
out[ 4 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(19 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(20 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(21 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(22 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(23 + inPos)) << 32) & 274877906943L);
out[ 5 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(23 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(24 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(25 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(26 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(27 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(28 + inPos)) << 34) & 274877906943L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(30 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(31 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(32 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(33 + inPos)) << 36) & 274877906943L);
out[ 7 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(33 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(34 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(35 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(36 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(37 + inPos)) << 30) & 274877906943L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 274877906943L);
out[ 1 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[ 4 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[ 5 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[ 6 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[ 7 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[ 8 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[ 9 + inPos]) << 34) & 274877906943L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[ 9 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[10 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[11 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[12 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[13 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[14 + inPos]) << 36) & 274877906943L);
out[ 3 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[16 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[17 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[18 + inPos]) << 30) & 274877906943L);
out[ 4 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[19 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[20 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[21 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[22 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[23 + inPos]) << 32) & 274877906943L);
out[ 5 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[23 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[24 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[25 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[26 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[27 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[28 + inPos]) << 34) & 274877906943L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[29 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[30 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[31 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[32 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[33 + inPos]) << 36) & 274877906943L);
out[ 7 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[33 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[34 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[35 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[36 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[37 + inPos]) << 30) & 274877906943L);
out[ 8 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[38 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[39 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[40 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[41 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[42 + inPos]) << 32) & 274877906943L);
out[ 9 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[42 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[43 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[44 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[45 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[46 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[47 + inPos]) << 34) & 274877906943L);
out[10 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[47 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[48 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[49 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[50 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[51 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[52 + inPos]) << 36) & 274877906943L);
out[11 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[52 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[53 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[54 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[55 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[56 + inPos]) << 30) & 274877906943L);
out[12 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[57 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[58 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[59 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[60 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[61 + inPos]) << 32) & 274877906943L);
out[13 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[61 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[62 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[63 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[64 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[65 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[66 + inPos]) << 34) & 274877906943L);
out[14 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[66 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[67 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[68 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[69 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[70 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[71 + inPos]) << 36) & 274877906943L);
out[15 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[71 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[72 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[73 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[74 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[75 + inPos]) << 30) & 274877906943L);
out[16 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[76 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[77 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[78 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[79 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[80 + inPos]) << 32) & 274877906943L);
out[17 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[80 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[81 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[82 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[83 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[84 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[85 + inPos]) << 34) & 274877906943L);
out[18 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[85 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[86 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[87 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[88 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[89 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[90 + inPos]) << 36) & 274877906943L);
out[19 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[90 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[91 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[92 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[93 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[94 + inPos]) << 30) & 274877906943L);
out[20 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[95 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[96 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[97 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[98 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[99 + inPos]) << 32) & 274877906943L);
out[21 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[99 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[100 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[101 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[102 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[103 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[104 + inPos]) << 34) & 274877906943L);
out[22 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[104 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[105 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[106 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[107 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[108 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[109 + inPos]) << 36) & 274877906943L);
out[23 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[109 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[110 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[111 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[112 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[113 + inPos]) << 30) & 274877906943L);
out[24 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[114 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[115 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[116 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[117 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[118 + inPos]) << 32) & 274877906943L);
out[25 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[118 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[119 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[120 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[121 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[122 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[123 + inPos]) << 34) & 274877906943L);
out[26 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[123 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[124 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[125 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[126 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[127 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[128 + inPos]) << 36) & 274877906943L);
out[27 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[128 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[129 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[130 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[131 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[132 + inPos]) << 30) & 274877906943L);
out[28 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in[133 + inPos]) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in[134 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in[135 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in[136 + inPos]) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in[137 + inPos]) << 32) & 274877906943L);
out[29 + outPos] =
// [76______]
// [____________________________________10]
((((long)in[137 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in[138 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in[139 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in[140 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in[141 + inPos]) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in[142 + inPos]) << 34) & 274877906943L);
out[30 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in[142 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in[143 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in[144 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in[145 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in[146 + inPos]) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in[147 + inPos]) << 36) & 274877906943L);
out[31 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in[147 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in[148 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in[149 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in[150 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in[151 + inPos]) << 30) & 274877906943L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 274877906943L);
out[ 1 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get( 4 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get( 5 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get( 6 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get( 7 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get( 8 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get( 9 + inPos)) << 34) & 274877906943L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get( 9 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(10 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(11 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(12 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(13 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(14 + inPos)) << 36) & 274877906943L);
out[ 3 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(16 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(17 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(18 + inPos)) << 30) & 274877906943L);
out[ 4 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(19 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(20 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(21 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(22 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(23 + inPos)) << 32) & 274877906943L);
out[ 5 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(23 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(24 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(25 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(26 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(27 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(28 + inPos)) << 34) & 274877906943L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(30 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(31 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(32 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(33 + inPos)) << 36) & 274877906943L);
out[ 7 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(33 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(34 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(35 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(36 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(37 + inPos)) << 30) & 274877906943L);
out[ 8 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(38 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(39 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(40 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(41 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(42 + inPos)) << 32) & 274877906943L);
out[ 9 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(42 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(43 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(44 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(45 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(46 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(47 + inPos)) << 34) & 274877906943L);
out[10 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(47 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(48 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(49 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(50 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(51 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(52 + inPos)) << 36) & 274877906943L);
out[11 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(52 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(53 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(54 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(55 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(56 + inPos)) << 30) & 274877906943L);
out[12 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(57 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(58 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(59 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(60 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(61 + inPos)) << 32) & 274877906943L);
out[13 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(61 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(62 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(63 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(64 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(65 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(66 + inPos)) << 34) & 274877906943L);
out[14 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(66 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(67 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(68 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(69 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(70 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(71 + inPos)) << 36) & 274877906943L);
out[15 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(71 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(72 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(73 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(74 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(75 + inPos)) << 30) & 274877906943L);
out[16 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(76 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(77 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(78 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(79 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(80 + inPos)) << 32) & 274877906943L);
out[17 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(80 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(81 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(82 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(83 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(84 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(85 + inPos)) << 34) & 274877906943L);
out[18 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(85 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(86 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(87 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(88 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(89 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(90 + inPos)) << 36) & 274877906943L);
out[19 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(90 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(91 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(92 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(93 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(94 + inPos)) << 30) & 274877906943L);
out[20 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(95 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(96 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(97 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(98 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(99 + inPos)) << 32) & 274877906943L);
out[21 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(99 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(100 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(101 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(102 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(103 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(104 + inPos)) << 34) & 274877906943L);
out[22 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(104 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(105 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(106 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(107 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(108 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(109 + inPos)) << 36) & 274877906943L);
out[23 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(109 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(110 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(111 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(112 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(113 + inPos)) << 30) & 274877906943L);
out[24 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(114 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(115 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(116 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(117 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(118 + inPos)) << 32) & 274877906943L);
out[25 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(118 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(119 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(120 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(121 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(122 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(123 + inPos)) << 34) & 274877906943L);
out[26 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(123 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(124 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(125 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(126 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(127 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(128 + inPos)) << 36) & 274877906943L);
out[27 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(128 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(129 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(130 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(131 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(132 + inPos)) << 30) & 274877906943L);
out[28 + outPos] =
// [76543210]
// [______________________________76543210]
((((long)in.get(133 + inPos)) ) & 255L)
| // [76543210]
// [______________________54321098________]
((((long)in.get(134 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________32109876________________]
((((long)in.get(135 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______10987654________________________]
((((long)in.get(136 + inPos)) << 24) & 4294967295L)
| // [__543210]
// [765432________________________________]
((((long)in.get(137 + inPos)) << 32) & 274877906943L);
out[29 + outPos] =
// [76______]
// [____________________________________10]
((((long)in.get(137 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________98765432__]
((((long)in.get(138 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________76543210__________]
((((long)in.get(139 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________54321098__________________]
((((long)in.get(140 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____32109876__________________________]
((((long)in.get(141 + inPos)) << 26) & 17179869183L)
| // [____3210]
// [7654__________________________________]
((((long)in.get(142 + inPos)) << 34) & 274877906943L);
out[30 + outPos] =
// [7654____]
// [__________________________________3210]
((((long)in.get(142 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________10987654____]
((((long)in.get(143 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________98765432____________]
((((long)in.get(144 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________76543210____________________]
((((long)in.get(145 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__54321098____________________________]
((((long)in.get(146 + inPos)) << 28) & 68719476735L)
| // [______10]
// [76____________________________________]
((((long)in.get(147 + inPos)) << 36) & 274877906943L);
out[31 + outPos] =
// [765432__]
// [________________________________543210]
((((long)in.get(147 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________32109876______]
((((long)in.get(148 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________10987654______________]
((((long)in.get(149 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________98765432______________________]
((((long)in.get(150 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [76543210______________________________]
((((long)in.get(151 + inPos)) << 30) & 274877906943L);
}
}
private static final class Packer39 extends BytePackerForLong {
private Packer39() {
super(39);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210]
((in[ 0 + inPos] & 549755813887L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________54321098________]
((in[ 0 + inPos] & 549755813887L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________32109876________________]
((in[ 0 + inPos] & 549755813887L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______10987654________________________]
((in[ 0 + inPos] & 549755813887L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_6543210]
// [8765432________________________________]
((in[ 0 + inPos] & 549755813887L) >>> 32)
| // [7_______]
// [______________________________________0]
((in[ 1 + inPos] & 549755813887L) << 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_]
((in[ 1 + inPos] & 549755813887L) >>> 1)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________65432109_________]
((in[ 1 + inPos] & 549755813887L) >>> 9)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________43210987_________________]
((in[ 1 + inPos] & 549755813887L) >>> 17)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______21098765_________________________]
((in[ 1 + inPos] & 549755813887L) >>> 25)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [876543_________________________________]
((in[ 1 + inPos] & 549755813887L) >>> 33)
| // [76______]
// [_____________________________________10]
((in[ 2 + inPos] & 549755813887L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432__]
((in[ 2 + inPos] & 549755813887L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_____________________76543210__________]
((in[ 2 + inPos] & 549755813887L) >>> 10)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_____________54321098__________________]
((in[ 2 + inPos] & 549755813887L) >>> 18)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____32109876__________________________]
((in[ 2 + inPos] & 549755813887L) >>> 26)) & 255);
out[14 + outPos] = (byte)((
// [___43210]
// [87654__________________________________]
((in[ 2 + inPos] & 549755813887L) >>> 34)
| // [765_____]
// [____________________________________210]
((in[ 3 + inPos] & 549755813887L) << 5)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________09876543___]
((in[ 3 + inPos] & 549755813887L) >>> 3)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________87654321___________]
((in[ 3 + inPos] & 549755813887L) >>> 11)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________65432109___________________]
((in[ 3 + inPos] & 549755813887L) >>> 19)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____43210987___________________________]
((in[ 3 + inPos] & 549755813887L) >>> 27)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [8765___________________________________]
((in[ 3 + inPos] & 549755813887L) >>> 35)
| // [7654____]
// [___________________________________3210]
((in[ 4 + inPos] & 549755813887L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [___________________________10987654____]
((in[ 4 + inPos] & 549755813887L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [___________________98765432____________]
((in[ 4 + inPos] & 549755813887L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___________76543210____________________]
((in[ 4 + inPos] & 549755813887L) >>> 20)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___54321098____________________________]
((in[ 4 + inPos] & 549755813887L) >>> 28)) & 255);
out[24 + outPos] = (byte)((
// [_____210]
// [876____________________________________]
((in[ 4 + inPos] & 549755813887L) >>> 36)
| // [76543___]
// [__________________________________43210]
((in[ 5 + inPos] & 549755813887L) << 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_____]
((in[ 5 + inPos] & 549755813887L) >>> 5)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [__________________09876543_____________]
((in[ 5 + inPos] & 549755813887L) >>> 13)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________87654321_____________________]
((in[ 5 + inPos] & 549755813887L) >>> 21)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__65432109_____________________________]
((in[ 5 + inPos] & 549755813887L) >>> 29)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [87_____________________________________]
((in[ 5 + inPos] & 549755813887L) >>> 37)
| // [765432__]
// [_________________________________543210]
((in[ 6 + inPos] & 549755813887L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_________________________32109876______]
((in[ 6 + inPos] & 549755813887L) >>> 6)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________________10987654______________]
((in[ 6 + inPos] & 549755813887L) >>> 14)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_________98765432______________________]
((in[ 6 + inPos] & 549755813887L) >>> 22)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_76543210______________________________]
((in[ 6 + inPos] & 549755813887L) >>> 30)) & 255);
out[34 + outPos] = (byte)((
// [_______0]
// [8______________________________________]
((in[ 6 + inPos] & 549755813887L) >>> 38)
| // [7654321_]
// [________________________________6543210]
((in[ 7 + inPos] & 549755813887L) << 1)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________43210987_______]
((in[ 7 + inPos] & 549755813887L) >>> 7)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________21098765_______________]
((in[ 7 + inPos] & 549755813887L) >>> 15)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________09876543_______________________]
((in[ 7 + inPos] & 549755813887L) >>> 23)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [87654321_______________________________]
((in[ 7 + inPos] & 549755813887L) >>> 31)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210]
((in[ 0 + inPos] & 549755813887L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________54321098________]
((in[ 0 + inPos] & 549755813887L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________32109876________________]
((in[ 0 + inPos] & 549755813887L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______10987654________________________]
((in[ 0 + inPos] & 549755813887L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [_6543210]
// [8765432________________________________]
((in[ 0 + inPos] & 549755813887L) >>> 32)
| // [7_______]
// [______________________________________0]
((in[ 1 + inPos] & 549755813887L) << 7)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_]
((in[ 1 + inPos] & 549755813887L) >>> 1)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________65432109_________]
((in[ 1 + inPos] & 549755813887L) >>> 9)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________43210987_________________]
((in[ 1 + inPos] & 549755813887L) >>> 17)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______21098765_________________________]
((in[ 1 + inPos] & 549755813887L) >>> 25)) & 255);
out[ 9 + outPos] = (byte)((
// [__543210]
// [876543_________________________________]
((in[ 1 + inPos] & 549755813887L) >>> 33)
| // [76______]
// [_____________________________________10]
((in[ 2 + inPos] & 549755813887L) << 6)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432__]
((in[ 2 + inPos] & 549755813887L) >>> 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_____________________76543210__________]
((in[ 2 + inPos] & 549755813887L) >>> 10)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_____________54321098__________________]
((in[ 2 + inPos] & 549755813887L) >>> 18)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____32109876__________________________]
((in[ 2 + inPos] & 549755813887L) >>> 26)) & 255);
out[14 + outPos] = (byte)((
// [___43210]
// [87654__________________________________]
((in[ 2 + inPos] & 549755813887L) >>> 34)
| // [765_____]
// [____________________________________210]
((in[ 3 + inPos] & 549755813887L) << 5)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________09876543___]
((in[ 3 + inPos] & 549755813887L) >>> 3)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________87654321___________]
((in[ 3 + inPos] & 549755813887L) >>> 11)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________65432109___________________]
((in[ 3 + inPos] & 549755813887L) >>> 19)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____43210987___________________________]
((in[ 3 + inPos] & 549755813887L) >>> 27)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [8765___________________________________]
((in[ 3 + inPos] & 549755813887L) >>> 35)
| // [7654____]
// [___________________________________3210]
((in[ 4 + inPos] & 549755813887L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [___________________________10987654____]
((in[ 4 + inPos] & 549755813887L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [___________________98765432____________]
((in[ 4 + inPos] & 549755813887L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [___________76543210____________________]
((in[ 4 + inPos] & 549755813887L) >>> 20)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [___54321098____________________________]
((in[ 4 + inPos] & 549755813887L) >>> 28)) & 255);
out[24 + outPos] = (byte)((
// [_____210]
// [876____________________________________]
((in[ 4 + inPos] & 549755813887L) >>> 36)
| // [76543___]
// [__________________________________43210]
((in[ 5 + inPos] & 549755813887L) << 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_____]
((in[ 5 + inPos] & 549755813887L) >>> 5)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [__________________09876543_____________]
((in[ 5 + inPos] & 549755813887L) >>> 13)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________87654321_____________________]
((in[ 5 + inPos] & 549755813887L) >>> 21)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__65432109_____________________________]
((in[ 5 + inPos] & 549755813887L) >>> 29)) & 255);
out[29 + outPos] = (byte)((
// [______10]
// [87_____________________________________]
((in[ 5 + inPos] & 549755813887L) >>> 37)
| // [765432__]
// [_________________________________543210]
((in[ 6 + inPos] & 549755813887L) << 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_________________________32109876______]
((in[ 6 + inPos] & 549755813887L) >>> 6)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________________10987654______________]
((in[ 6 + inPos] & 549755813887L) >>> 14)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_________98765432______________________]
((in[ 6 + inPos] & 549755813887L) >>> 22)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_76543210______________________________]
((in[ 6 + inPos] & 549755813887L) >>> 30)) & 255);
out[34 + outPos] = (byte)((
// [_______0]
// [8______________________________________]
((in[ 6 + inPos] & 549755813887L) >>> 38)
| // [7654321_]
// [________________________________6543210]
((in[ 7 + inPos] & 549755813887L) << 1)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________43210987_______]
((in[ 7 + inPos] & 549755813887L) >>> 7)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________21098765_______________]
((in[ 7 + inPos] & 549755813887L) >>> 15)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________09876543_______________________]
((in[ 7 + inPos] & 549755813887L) >>> 23)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [87654321_______________________________]
((in[ 7 + inPos] & 549755813887L) >>> 31)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210]
((in[ 8 + inPos] & 549755813887L))) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_______________________54321098________]
((in[ 8 + inPos] & 549755813887L) >>> 8)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_______________32109876________________]
((in[ 8 + inPos] & 549755813887L) >>> 16)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_______10987654________________________]
((in[ 8 + inPos] & 549755813887L) >>> 24)) & 255);
out[43 + outPos] = (byte)((
// [_6543210]
// [8765432________________________________]
((in[ 8 + inPos] & 549755813887L) >>> 32)
| // [7_______]
// [______________________________________0]
((in[ 9 + inPos] & 549755813887L) << 7)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_]
((in[ 9 + inPos] & 549755813887L) >>> 1)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______________________65432109_________]
((in[ 9 + inPos] & 549755813887L) >>> 9)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________43210987_________________]
((in[ 9 + inPos] & 549755813887L) >>> 17)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______21098765_________________________]
((in[ 9 + inPos] & 549755813887L) >>> 25)) & 255);
out[48 + outPos] = (byte)((
// [__543210]
// [876543_________________________________]
((in[ 9 + inPos] & 549755813887L) >>> 33)
| // [76______]
// [_____________________________________10]
((in[10 + inPos] & 549755813887L) << 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432__]
((in[10 + inPos] & 549755813887L) >>> 2)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_____________________76543210__________]
((in[10 + inPos] & 549755813887L) >>> 10)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_____________54321098__________________]
((in[10 + inPos] & 549755813887L) >>> 18)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_____32109876__________________________]
((in[10 + inPos] & 549755813887L) >>> 26)) & 255);
out[53 + outPos] = (byte)((
// [___43210]
// [87654__________________________________]
((in[10 + inPos] & 549755813887L) >>> 34)
| // [765_____]
// [____________________________________210]
((in[11 + inPos] & 549755813887L) << 5)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [____________________________09876543___]
((in[11 + inPos] & 549755813887L) >>> 3)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________________87654321___________]
((in[11 + inPos] & 549755813887L) >>> 11)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________65432109___________________]
((in[11 + inPos] & 549755813887L) >>> 19)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____43210987___________________________]
((in[11 + inPos] & 549755813887L) >>> 27)) & 255);
out[58 + outPos] = (byte)((
// [____3210]
// [8765___________________________________]
((in[11 + inPos] & 549755813887L) >>> 35)
| // [7654____]
// [___________________________________3210]
((in[12 + inPos] & 549755813887L) << 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [___________________________10987654____]
((in[12 + inPos] & 549755813887L) >>> 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [___________________98765432____________]
((in[12 + inPos] & 549755813887L) >>> 12)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [___________76543210____________________]
((in[12 + inPos] & 549755813887L) >>> 20)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [___54321098____________________________]
((in[12 + inPos] & 549755813887L) >>> 28)) & 255);
out[63 + outPos] = (byte)((
// [_____210]
// [876____________________________________]
((in[12 + inPos] & 549755813887L) >>> 36)
| // [76543___]
// [__________________________________43210]
((in[13 + inPos] & 549755813887L) << 3)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_____]
((in[13 + inPos] & 549755813887L) >>> 5)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [__________________09876543_____________]
((in[13 + inPos] & 549755813887L) >>> 13)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [__________87654321_____________________]
((in[13 + inPos] & 549755813887L) >>> 21)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__65432109_____________________________]
((in[13 + inPos] & 549755813887L) >>> 29)) & 255);
out[68 + outPos] = (byte)((
// [______10]
// [87_____________________________________]
((in[13 + inPos] & 549755813887L) >>> 37)
| // [765432__]
// [_________________________________543210]
((in[14 + inPos] & 549755813887L) << 2)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_________________________32109876______]
((in[14 + inPos] & 549755813887L) >>> 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_________________10987654______________]
((in[14 + inPos] & 549755813887L) >>> 14)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [_________98765432______________________]
((in[14 + inPos] & 549755813887L) >>> 22)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_76543210______________________________]
((in[14 + inPos] & 549755813887L) >>> 30)) & 255);
out[73 + outPos] = (byte)((
// [_______0]
// [8______________________________________]
((in[14 + inPos] & 549755813887L) >>> 38)
| // [7654321_]
// [________________________________6543210]
((in[15 + inPos] & 549755813887L) << 1)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________________43210987_______]
((in[15 + inPos] & 549755813887L) >>> 7)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________21098765_______________]
((in[15 + inPos] & 549755813887L) >>> 15)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________09876543_______________________]
((in[15 + inPos] & 549755813887L) >>> 23)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [87654321_______________________________]
((in[15 + inPos] & 549755813887L) >>> 31)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210]
((in[16 + inPos] & 549755813887L))) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_______________________54321098________]
((in[16 + inPos] & 549755813887L) >>> 8)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_______________32109876________________]
((in[16 + inPos] & 549755813887L) >>> 16)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_______10987654________________________]
((in[16 + inPos] & 549755813887L) >>> 24)) & 255);
out[82 + outPos] = (byte)((
// [_6543210]
// [8765432________________________________]
((in[16 + inPos] & 549755813887L) >>> 32)
| // [7_______]
// [______________________________________0]
((in[17 + inPos] & 549755813887L) << 7)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_]
((in[17 + inPos] & 549755813887L) >>> 1)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [______________________65432109_________]
((in[17 + inPos] & 549755813887L) >>> 9)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [______________43210987_________________]
((in[17 + inPos] & 549755813887L) >>> 17)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [______21098765_________________________]
((in[17 + inPos] & 549755813887L) >>> 25)) & 255);
out[87 + outPos] = (byte)((
// [__543210]
// [876543_________________________________]
((in[17 + inPos] & 549755813887L) >>> 33)
| // [76______]
// [_____________________________________10]
((in[18 + inPos] & 549755813887L) << 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432__]
((in[18 + inPos] & 549755813887L) >>> 2)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_____________________76543210__________]
((in[18 + inPos] & 549755813887L) >>> 10)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_____________54321098__________________]
((in[18 + inPos] & 549755813887L) >>> 18)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_____32109876__________________________]
((in[18 + inPos] & 549755813887L) >>> 26)) & 255);
out[92 + outPos] = (byte)((
// [___43210]
// [87654__________________________________]
((in[18 + inPos] & 549755813887L) >>> 34)
| // [765_____]
// [____________________________________210]
((in[19 + inPos] & 549755813887L) << 5)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____________________________09876543___]
((in[19 + inPos] & 549755813887L) >>> 3)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [____________________87654321___________]
((in[19 + inPos] & 549755813887L) >>> 11)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________65432109___________________]
((in[19 + inPos] & 549755813887L) >>> 19)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____43210987___________________________]
((in[19 + inPos] & 549755813887L) >>> 27)) & 255);
out[97 + outPos] = (byte)((
// [____3210]
// [8765___________________________________]
((in[19 + inPos] & 549755813887L) >>> 35)
| // [7654____]
// [___________________________________3210]
((in[20 + inPos] & 549755813887L) << 4)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [___________________________10987654____]
((in[20 + inPos] & 549755813887L) >>> 4)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [___________________98765432____________]
((in[20 + inPos] & 549755813887L) >>> 12)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [___________76543210____________________]
((in[20 + inPos] & 549755813887L) >>> 20)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [___54321098____________________________]
((in[20 + inPos] & 549755813887L) >>> 28)) & 255);
out[102 + outPos] = (byte)((
// [_____210]
// [876____________________________________]
((in[20 + inPos] & 549755813887L) >>> 36)
| // [76543___]
// [__________________________________43210]
((in[21 + inPos] & 549755813887L) << 3)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_____]
((in[21 + inPos] & 549755813887L) >>> 5)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________________09876543_____________]
((in[21 + inPos] & 549755813887L) >>> 13)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________87654321_____________________]
((in[21 + inPos] & 549755813887L) >>> 21)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__65432109_____________________________]
((in[21 + inPos] & 549755813887L) >>> 29)) & 255);
out[107 + outPos] = (byte)((
// [______10]
// [87_____________________________________]
((in[21 + inPos] & 549755813887L) >>> 37)
| // [765432__]
// [_________________________________543210]
((in[22 + inPos] & 549755813887L) << 2)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [_________________________32109876______]
((in[22 + inPos] & 549755813887L) >>> 6)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [_________________10987654______________]
((in[22 + inPos] & 549755813887L) >>> 14)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [_________98765432______________________]
((in[22 + inPos] & 549755813887L) >>> 22)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_76543210______________________________]
((in[22 + inPos] & 549755813887L) >>> 30)) & 255);
out[112 + outPos] = (byte)((
// [_______0]
// [8______________________________________]
((in[22 + inPos] & 549755813887L) >>> 38)
| // [7654321_]
// [________________________________6543210]
((in[23 + inPos] & 549755813887L) << 1)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________43210987_______]
((in[23 + inPos] & 549755813887L) >>> 7)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________21098765_______________]
((in[23 + inPos] & 549755813887L) >>> 15)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________09876543_______________________]
((in[23 + inPos] & 549755813887L) >>> 23)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [87654321_______________________________]
((in[23 + inPos] & 549755813887L) >>> 31)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210]
((in[24 + inPos] & 549755813887L))) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [_______________________54321098________]
((in[24 + inPos] & 549755813887L) >>> 8)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [_______________32109876________________]
((in[24 + inPos] & 549755813887L) >>> 16)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [_______10987654________________________]
((in[24 + inPos] & 549755813887L) >>> 24)) & 255);
out[121 + outPos] = (byte)((
// [_6543210]
// [8765432________________________________]
((in[24 + inPos] & 549755813887L) >>> 32)
| // [7_______]
// [______________________________________0]
((in[25 + inPos] & 549755813887L) << 7)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_]
((in[25 + inPos] & 549755813887L) >>> 1)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [______________________65432109_________]
((in[25 + inPos] & 549755813887L) >>> 9)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [______________43210987_________________]
((in[25 + inPos] & 549755813887L) >>> 17)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [______21098765_________________________]
((in[25 + inPos] & 549755813887L) >>> 25)) & 255);
out[126 + outPos] = (byte)((
// [__543210]
// [876543_________________________________]
((in[25 + inPos] & 549755813887L) >>> 33)
| // [76______]
// [_____________________________________10]
((in[26 + inPos] & 549755813887L) << 6)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432__]
((in[26 + inPos] & 549755813887L) >>> 2)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [_____________________76543210__________]
((in[26 + inPos] & 549755813887L) >>> 10)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [_____________54321098__________________]
((in[26 + inPos] & 549755813887L) >>> 18)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [_____32109876__________________________]
((in[26 + inPos] & 549755813887L) >>> 26)) & 255);
out[131 + outPos] = (byte)((
// [___43210]
// [87654__________________________________]
((in[26 + inPos] & 549755813887L) >>> 34)
| // [765_____]
// [____________________________________210]
((in[27 + inPos] & 549755813887L) << 5)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________09876543___]
((in[27 + inPos] & 549755813887L) >>> 3)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________87654321___________]
((in[27 + inPos] & 549755813887L) >>> 11)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________65432109___________________]
((in[27 + inPos] & 549755813887L) >>> 19)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____43210987___________________________]
((in[27 + inPos] & 549755813887L) >>> 27)) & 255);
out[136 + outPos] = (byte)((
// [____3210]
// [8765___________________________________]
((in[27 + inPos] & 549755813887L) >>> 35)
| // [7654____]
// [___________________________________3210]
((in[28 + inPos] & 549755813887L) << 4)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [___________________________10987654____]
((in[28 + inPos] & 549755813887L) >>> 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [___________________98765432____________]
((in[28 + inPos] & 549755813887L) >>> 12)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [___________76543210____________________]
((in[28 + inPos] & 549755813887L) >>> 20)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [___54321098____________________________]
((in[28 + inPos] & 549755813887L) >>> 28)) & 255);
out[141 + outPos] = (byte)((
// [_____210]
// [876____________________________________]
((in[28 + inPos] & 549755813887L) >>> 36)
| // [76543___]
// [__________________________________43210]
((in[29 + inPos] & 549755813887L) << 3)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_____]
((in[29 + inPos] & 549755813887L) >>> 5)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [__________________09876543_____________]
((in[29 + inPos] & 549755813887L) >>> 13)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [__________87654321_____________________]
((in[29 + inPos] & 549755813887L) >>> 21)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__65432109_____________________________]
((in[29 + inPos] & 549755813887L) >>> 29)) & 255);
out[146 + outPos] = (byte)((
// [______10]
// [87_____________________________________]
((in[29 + inPos] & 549755813887L) >>> 37)
| // [765432__]
// [_________________________________543210]
((in[30 + inPos] & 549755813887L) << 2)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_________________________32109876______]
((in[30 + inPos] & 549755813887L) >>> 6)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_________________10987654______________]
((in[30 + inPos] & 549755813887L) >>> 14)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [_________98765432______________________]
((in[30 + inPos] & 549755813887L) >>> 22)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [_76543210______________________________]
((in[30 + inPos] & 549755813887L) >>> 30)) & 255);
out[151 + outPos] = (byte)((
// [_______0]
// [8______________________________________]
((in[30 + inPos] & 549755813887L) >>> 38)
| // [7654321_]
// [________________________________6543210]
((in[31 + inPos] & 549755813887L) << 1)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________________43210987_______]
((in[31 + inPos] & 549755813887L) >>> 7)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________________21098765_______________]
((in[31 + inPos] & 549755813887L) >>> 15)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________09876543_______________________]
((in[31 + inPos] & 549755813887L) >>> 23)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [87654321_______________________________]
((in[31 + inPos] & 549755813887L) >>> 31)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 549755813887L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in[ 4 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in[ 5 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in[ 6 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in[ 7 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in[ 8 + inPos]) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in[ 9 + inPos]) << 33) & 549755813887L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in[11 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in[12 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in[13 + inPos]) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in[14 + inPos]) << 34) & 549755813887L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in[14 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in[15 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in[16 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in[17 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in[18 + inPos]) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in[19 + inPos]) << 35) & 549755813887L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in[22 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in[23 + inPos]) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in[24 + inPos]) << 36) & 549755813887L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in[24 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in[25 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in[26 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in[27 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in[28 + inPos]) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in[29 + inPos]) << 37) & 549755813887L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in[30 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in[31 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in[32 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in[33 + inPos]) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in[34 + inPos]) << 38) & 549755813887L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in[34 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in[35 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in[36 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in[37 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in[38 + inPos]) << 31) & 549755813887L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 549755813887L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in.get( 4 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in.get( 5 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in.get( 6 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in.get( 7 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in.get( 8 + inPos)) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in.get( 9 + inPos)) << 33) & 549755813887L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in.get(11 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in.get(12 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in.get(13 + inPos)) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in.get(14 + inPos)) << 34) & 549755813887L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in.get(14 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in.get(15 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in.get(16 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in.get(17 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in.get(18 + inPos)) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in.get(19 + inPos)) << 35) & 549755813887L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in.get(22 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in.get(23 + inPos)) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in.get(24 + inPos)) << 36) & 549755813887L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in.get(24 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in.get(25 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in.get(26 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in.get(27 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in.get(28 + inPos)) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in.get(29 + inPos)) << 37) & 549755813887L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in.get(30 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in.get(31 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in.get(32 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in.get(33 + inPos)) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in.get(34 + inPos)) << 38) & 549755813887L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in.get(34 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in.get(35 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in.get(36 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in.get(37 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in.get(38 + inPos)) << 31) & 549755813887L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 549755813887L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in[ 4 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in[ 5 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in[ 6 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in[ 7 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in[ 8 + inPos]) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in[ 9 + inPos]) << 33) & 549755813887L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in[ 9 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in[10 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in[11 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in[12 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in[13 + inPos]) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in[14 + inPos]) << 34) & 549755813887L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in[14 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in[15 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in[16 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in[17 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in[18 + inPos]) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in[19 + inPos]) << 35) & 549755813887L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in[22 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in[23 + inPos]) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in[24 + inPos]) << 36) & 549755813887L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in[24 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in[25 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in[26 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in[27 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in[28 + inPos]) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in[29 + inPos]) << 37) & 549755813887L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in[29 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in[30 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in[31 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in[32 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in[33 + inPos]) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in[34 + inPos]) << 38) & 549755813887L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in[34 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in[35 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in[36 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in[37 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in[38 + inPos]) << 31) & 549755813887L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in[40 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in[41 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in[42 + inPos]) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in[43 + inPos]) << 32) & 549755813887L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in[43 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in[44 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in[45 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in[46 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in[47 + inPos]) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in[48 + inPos]) << 33) & 549755813887L);
out[10 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in[48 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in[49 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in[50 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in[51 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in[52 + inPos]) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in[53 + inPos]) << 34) & 549755813887L);
out[11 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in[53 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in[54 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in[55 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in[56 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in[57 + inPos]) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in[58 + inPos]) << 35) & 549755813887L);
out[12 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in[58 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in[59 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in[60 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in[61 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in[62 + inPos]) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in[63 + inPos]) << 36) & 549755813887L);
out[13 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in[63 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in[64 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in[65 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in[66 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in[67 + inPos]) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in[68 + inPos]) << 37) & 549755813887L);
out[14 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in[68 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in[69 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in[70 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in[71 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in[72 + inPos]) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in[73 + inPos]) << 38) & 549755813887L);
out[15 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in[73 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in[74 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in[75 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in[76 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in[77 + inPos]) << 31) & 549755813887L);
out[16 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in[78 + inPos]) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in[79 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in[80 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in[81 + inPos]) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in[82 + inPos]) << 32) & 549755813887L);
out[17 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in[82 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in[83 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in[84 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in[85 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in[86 + inPos]) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in[87 + inPos]) << 33) & 549755813887L);
out[18 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in[87 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in[88 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in[89 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in[90 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in[91 + inPos]) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in[92 + inPos]) << 34) & 549755813887L);
out[19 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in[92 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in[93 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in[94 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in[95 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in[96 + inPos]) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in[97 + inPos]) << 35) & 549755813887L);
out[20 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in[97 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in[98 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in[99 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in[100 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in[101 + inPos]) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in[102 + inPos]) << 36) & 549755813887L);
out[21 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in[102 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in[103 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in[104 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in[105 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in[106 + inPos]) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in[107 + inPos]) << 37) & 549755813887L);
out[22 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in[107 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in[108 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in[109 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in[110 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in[111 + inPos]) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in[112 + inPos]) << 38) & 549755813887L);
out[23 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in[112 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in[113 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in[114 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in[115 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in[116 + inPos]) << 31) & 549755813887L);
out[24 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in[117 + inPos]) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in[118 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in[119 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in[120 + inPos]) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in[121 + inPos]) << 32) & 549755813887L);
out[25 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in[121 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in[122 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in[123 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in[124 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in[125 + inPos]) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in[126 + inPos]) << 33) & 549755813887L);
out[26 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in[126 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in[127 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in[128 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in[129 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in[130 + inPos]) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in[131 + inPos]) << 34) & 549755813887L);
out[27 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in[131 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in[132 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in[133 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in[134 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in[135 + inPos]) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in[136 + inPos]) << 35) & 549755813887L);
out[28 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in[136 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in[137 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in[138 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in[139 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in[140 + inPos]) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in[141 + inPos]) << 36) & 549755813887L);
out[29 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in[141 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in[142 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in[143 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in[144 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in[145 + inPos]) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in[146 + inPos]) << 37) & 549755813887L);
out[30 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in[146 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in[147 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in[148 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in[149 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in[150 + inPos]) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in[151 + inPos]) << 38) & 549755813887L);
out[31 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in[151 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in[152 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in[153 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in[154 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in[155 + inPos]) << 31) & 549755813887L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 549755813887L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in.get( 4 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in.get( 5 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in.get( 6 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in.get( 7 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in.get( 8 + inPos)) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in.get( 9 + inPos)) << 33) & 549755813887L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in.get( 9 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in.get(10 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in.get(11 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in.get(12 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in.get(13 + inPos)) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in.get(14 + inPos)) << 34) & 549755813887L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in.get(14 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in.get(15 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in.get(16 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in.get(17 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in.get(18 + inPos)) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in.get(19 + inPos)) << 35) & 549755813887L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in.get(22 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in.get(23 + inPos)) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in.get(24 + inPos)) << 36) & 549755813887L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in.get(24 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in.get(25 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in.get(26 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in.get(27 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in.get(28 + inPos)) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in.get(29 + inPos)) << 37) & 549755813887L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in.get(29 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in.get(30 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in.get(31 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in.get(32 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in.get(33 + inPos)) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in.get(34 + inPos)) << 38) & 549755813887L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in.get(34 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in.get(35 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in.get(36 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in.get(37 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in.get(38 + inPos)) << 31) & 549755813887L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in.get(40 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in.get(41 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in.get(42 + inPos)) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in.get(43 + inPos)) << 32) & 549755813887L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in.get(43 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in.get(44 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in.get(45 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in.get(46 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in.get(47 + inPos)) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in.get(48 + inPos)) << 33) & 549755813887L);
out[10 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in.get(48 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in.get(49 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in.get(50 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in.get(51 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in.get(52 + inPos)) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in.get(53 + inPos)) << 34) & 549755813887L);
out[11 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in.get(53 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in.get(54 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in.get(55 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in.get(56 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in.get(57 + inPos)) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in.get(58 + inPos)) << 35) & 549755813887L);
out[12 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in.get(58 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in.get(59 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in.get(60 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in.get(61 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in.get(62 + inPos)) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in.get(63 + inPos)) << 36) & 549755813887L);
out[13 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in.get(63 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in.get(64 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in.get(65 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in.get(66 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in.get(67 + inPos)) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in.get(68 + inPos)) << 37) & 549755813887L);
out[14 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in.get(68 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in.get(69 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in.get(70 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in.get(71 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in.get(72 + inPos)) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in.get(73 + inPos)) << 38) & 549755813887L);
out[15 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in.get(73 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in.get(74 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in.get(75 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in.get(76 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in.get(77 + inPos)) << 31) & 549755813887L);
out[16 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in.get(78 + inPos)) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in.get(79 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in.get(80 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in.get(81 + inPos)) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in.get(82 + inPos)) << 32) & 549755813887L);
out[17 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in.get(82 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in.get(83 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in.get(84 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in.get(85 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in.get(86 + inPos)) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in.get(87 + inPos)) << 33) & 549755813887L);
out[18 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in.get(87 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in.get(88 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in.get(89 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in.get(90 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in.get(91 + inPos)) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in.get(92 + inPos)) << 34) & 549755813887L);
out[19 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in.get(92 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in.get(93 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in.get(94 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in.get(95 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in.get(96 + inPos)) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in.get(97 + inPos)) << 35) & 549755813887L);
out[20 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in.get(97 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in.get(98 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in.get(99 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in.get(100 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in.get(101 + inPos)) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in.get(102 + inPos)) << 36) & 549755813887L);
out[21 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in.get(102 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in.get(103 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in.get(104 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in.get(105 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in.get(106 + inPos)) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in.get(107 + inPos)) << 37) & 549755813887L);
out[22 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in.get(107 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in.get(108 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in.get(109 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in.get(110 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in.get(111 + inPos)) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in.get(112 + inPos)) << 38) & 549755813887L);
out[23 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in.get(112 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in.get(113 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in.get(114 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in.get(115 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in.get(116 + inPos)) << 31) & 549755813887L);
out[24 + outPos] =
// [76543210]
// [_______________________________76543210]
((((long)in.get(117 + inPos)) ) & 255L)
| // [76543210]
// [_______________________54321098________]
((((long)in.get(118 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________32109876________________]
((((long)in.get(119 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______10987654________________________]
((((long)in.get(120 + inPos)) << 24) & 4294967295L)
| // [_6543210]
// [8765432________________________________]
((((long)in.get(121 + inPos)) << 32) & 549755813887L);
out[25 + outPos] =
// [7_______]
// [______________________________________0]
((((long)in.get(121 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________87654321_]
((((long)in.get(122 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________65432109_________]
((((long)in.get(123 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________43210987_________________]
((((long)in.get(124 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______21098765_________________________]
((((long)in.get(125 + inPos)) << 25) & 8589934591L)
| // [__543210]
// [876543_________________________________]
((((long)in.get(126 + inPos)) << 33) & 549755813887L);
out[26 + outPos] =
// [76______]
// [_____________________________________10]
((((long)in.get(126 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________98765432__]
((((long)in.get(127 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________76543210__________]
((((long)in.get(128 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________54321098__________________]
((((long)in.get(129 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____32109876__________________________]
((((long)in.get(130 + inPos)) << 26) & 17179869183L)
| // [___43210]
// [87654__________________________________]
((((long)in.get(131 + inPos)) << 34) & 549755813887L);
out[27 + outPos] =
// [765_____]
// [____________________________________210]
((((long)in.get(131 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________09876543___]
((((long)in.get(132 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________87654321___________]
((((long)in.get(133 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________65432109___________________]
((((long)in.get(134 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____43210987___________________________]
((((long)in.get(135 + inPos)) << 27) & 34359738367L)
| // [____3210]
// [8765___________________________________]
((((long)in.get(136 + inPos)) << 35) & 549755813887L);
out[28 + outPos] =
// [7654____]
// [___________________________________3210]
((((long)in.get(136 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________10987654____]
((((long)in.get(137 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________98765432____________]
((((long)in.get(138 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________76543210____________________]
((((long)in.get(139 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___54321098____________________________]
((((long)in.get(140 + inPos)) << 28) & 68719476735L)
| // [_____210]
// [876____________________________________]
((((long)in.get(141 + inPos)) << 36) & 549755813887L);
out[29 + outPos] =
// [76543___]
// [__________________________________43210]
((((long)in.get(141 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________21098765_____]
((((long)in.get(142 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________09876543_____________]
((((long)in.get(143 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________87654321_____________________]
((((long)in.get(144 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__65432109_____________________________]
((((long)in.get(145 + inPos)) << 29) & 137438953471L)
| // [______10]
// [87_____________________________________]
((((long)in.get(146 + inPos)) << 37) & 549755813887L);
out[30 + outPos] =
// [765432__]
// [_________________________________543210]
((((long)in.get(146 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________32109876______]
((((long)in.get(147 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________10987654______________]
((((long)in.get(148 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________98765432______________________]
((((long)in.get(149 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_76543210______________________________]
((((long)in.get(150 + inPos)) << 30) & 274877906943L)
| // [_______0]
// [8______________________________________]
((((long)in.get(151 + inPos)) << 38) & 549755813887L);
out[31 + outPos] =
// [7654321_]
// [________________________________6543210]
((((long)in.get(151 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________43210987_______]
((((long)in.get(152 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________21098765_______________]
((((long)in.get(153 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________09876543_______________________]
((((long)in.get(154 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [87654321_______________________________]
((((long)in.get(155 + inPos)) << 31) & 549755813887L);
}
}
private static final class Packer40 extends BytePackerForLong {
private Packer40() {
super(40);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 0 + inPos] & 1099511627775L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 0 + inPos] & 1099511627775L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 0 + inPos] & 1099511627775L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 0 + inPos] & 1099511627775L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 0 + inPos] & 1099511627775L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 1 + inPos] & 1099511627775L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 1 + inPos] & 1099511627775L) >>> 8)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 1 + inPos] & 1099511627775L) >>> 16)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 1 + inPos] & 1099511627775L) >>> 24)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 1 + inPos] & 1099511627775L) >>> 32)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 2 + inPos] & 1099511627775L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 2 + inPos] & 1099511627775L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 2 + inPos] & 1099511627775L) >>> 16)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 2 + inPos] & 1099511627775L) >>> 24)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 2 + inPos] & 1099511627775L) >>> 32)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 3 + inPos] & 1099511627775L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 3 + inPos] & 1099511627775L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 3 + inPos] & 1099511627775L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 3 + inPos] & 1099511627775L) >>> 24)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 3 + inPos] & 1099511627775L) >>> 32)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 4 + inPos] & 1099511627775L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 4 + inPos] & 1099511627775L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 4 + inPos] & 1099511627775L) >>> 16)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 4 + inPos] & 1099511627775L) >>> 24)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 4 + inPos] & 1099511627775L) >>> 32)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 5 + inPos] & 1099511627775L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 5 + inPos] & 1099511627775L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 5 + inPos] & 1099511627775L) >>> 16)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 5 + inPos] & 1099511627775L) >>> 24)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 5 + inPos] & 1099511627775L) >>> 32)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 6 + inPos] & 1099511627775L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 6 + inPos] & 1099511627775L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 6 + inPos] & 1099511627775L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 6 + inPos] & 1099511627775L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 6 + inPos] & 1099511627775L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 7 + inPos] & 1099511627775L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 7 + inPos] & 1099511627775L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 7 + inPos] & 1099511627775L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 7 + inPos] & 1099511627775L) >>> 24)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 7 + inPos] & 1099511627775L) >>> 32)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 0 + inPos] & 1099511627775L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 0 + inPos] & 1099511627775L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 0 + inPos] & 1099511627775L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 0 + inPos] & 1099511627775L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 0 + inPos] & 1099511627775L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 1 + inPos] & 1099511627775L))) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 1 + inPos] & 1099511627775L) >>> 8)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 1 + inPos] & 1099511627775L) >>> 16)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 1 + inPos] & 1099511627775L) >>> 24)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 1 + inPos] & 1099511627775L) >>> 32)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 2 + inPos] & 1099511627775L))) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 2 + inPos] & 1099511627775L) >>> 8)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 2 + inPos] & 1099511627775L) >>> 16)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 2 + inPos] & 1099511627775L) >>> 24)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 2 + inPos] & 1099511627775L) >>> 32)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 3 + inPos] & 1099511627775L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 3 + inPos] & 1099511627775L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 3 + inPos] & 1099511627775L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 3 + inPos] & 1099511627775L) >>> 24)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 3 + inPos] & 1099511627775L) >>> 32)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 4 + inPos] & 1099511627775L))) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 4 + inPos] & 1099511627775L) >>> 8)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 4 + inPos] & 1099511627775L) >>> 16)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 4 + inPos] & 1099511627775L) >>> 24)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 4 + inPos] & 1099511627775L) >>> 32)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 5 + inPos] & 1099511627775L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 5 + inPos] & 1099511627775L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 5 + inPos] & 1099511627775L) >>> 16)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 5 + inPos] & 1099511627775L) >>> 24)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 5 + inPos] & 1099511627775L) >>> 32)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 6 + inPos] & 1099511627775L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 6 + inPos] & 1099511627775L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 6 + inPos] & 1099511627775L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 6 + inPos] & 1099511627775L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 6 + inPos] & 1099511627775L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 7 + inPos] & 1099511627775L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 7 + inPos] & 1099511627775L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 7 + inPos] & 1099511627775L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 7 + inPos] & 1099511627775L) >>> 24)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 7 + inPos] & 1099511627775L) >>> 32)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 8 + inPos] & 1099511627775L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 8 + inPos] & 1099511627775L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 8 + inPos] & 1099511627775L) >>> 16)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 8 + inPos] & 1099511627775L) >>> 24)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 8 + inPos] & 1099511627775L) >>> 32)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[ 9 + inPos] & 1099511627775L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[ 9 + inPos] & 1099511627775L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[ 9 + inPos] & 1099511627775L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[ 9 + inPos] & 1099511627775L) >>> 24)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[ 9 + inPos] & 1099511627775L) >>> 32)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[10 + inPos] & 1099511627775L))) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[10 + inPos] & 1099511627775L) >>> 8)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[10 + inPos] & 1099511627775L) >>> 16)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[10 + inPos] & 1099511627775L) >>> 24)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[10 + inPos] & 1099511627775L) >>> 32)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[11 + inPos] & 1099511627775L))) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[11 + inPos] & 1099511627775L) >>> 8)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[11 + inPos] & 1099511627775L) >>> 16)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[11 + inPos] & 1099511627775L) >>> 24)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[11 + inPos] & 1099511627775L) >>> 32)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[12 + inPos] & 1099511627775L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[12 + inPos] & 1099511627775L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[12 + inPos] & 1099511627775L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[12 + inPos] & 1099511627775L) >>> 24)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[12 + inPos] & 1099511627775L) >>> 32)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[13 + inPos] & 1099511627775L))) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[13 + inPos] & 1099511627775L) >>> 8)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[13 + inPos] & 1099511627775L) >>> 16)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[13 + inPos] & 1099511627775L) >>> 24)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[13 + inPos] & 1099511627775L) >>> 32)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[14 + inPos] & 1099511627775L))) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[14 + inPos] & 1099511627775L) >>> 8)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[14 + inPos] & 1099511627775L) >>> 16)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[14 + inPos] & 1099511627775L) >>> 24)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[14 + inPos] & 1099511627775L) >>> 32)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[15 + inPos] & 1099511627775L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[15 + inPos] & 1099511627775L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[15 + inPos] & 1099511627775L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[15 + inPos] & 1099511627775L) >>> 24)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[15 + inPos] & 1099511627775L) >>> 32)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[16 + inPos] & 1099511627775L))) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[16 + inPos] & 1099511627775L) >>> 8)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[16 + inPos] & 1099511627775L) >>> 16)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[16 + inPos] & 1099511627775L) >>> 24)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[16 + inPos] & 1099511627775L) >>> 32)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[17 + inPos] & 1099511627775L))) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[17 + inPos] & 1099511627775L) >>> 8)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[17 + inPos] & 1099511627775L) >>> 16)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[17 + inPos] & 1099511627775L) >>> 24)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[17 + inPos] & 1099511627775L) >>> 32)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[18 + inPos] & 1099511627775L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[18 + inPos] & 1099511627775L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[18 + inPos] & 1099511627775L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[18 + inPos] & 1099511627775L) >>> 24)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[18 + inPos] & 1099511627775L) >>> 32)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[19 + inPos] & 1099511627775L))) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[19 + inPos] & 1099511627775L) >>> 8)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[19 + inPos] & 1099511627775L) >>> 16)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[19 + inPos] & 1099511627775L) >>> 24)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[19 + inPos] & 1099511627775L) >>> 32)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[20 + inPos] & 1099511627775L))) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[20 + inPos] & 1099511627775L) >>> 8)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[20 + inPos] & 1099511627775L) >>> 16)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[20 + inPos] & 1099511627775L) >>> 24)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[20 + inPos] & 1099511627775L) >>> 32)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[21 + inPos] & 1099511627775L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[21 + inPos] & 1099511627775L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[21 + inPos] & 1099511627775L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[21 + inPos] & 1099511627775L) >>> 24)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[21 + inPos] & 1099511627775L) >>> 32)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[22 + inPos] & 1099511627775L))) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[22 + inPos] & 1099511627775L) >>> 8)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[22 + inPos] & 1099511627775L) >>> 16)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[22 + inPos] & 1099511627775L) >>> 24)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[22 + inPos] & 1099511627775L) >>> 32)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[23 + inPos] & 1099511627775L))) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[23 + inPos] & 1099511627775L) >>> 8)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[23 + inPos] & 1099511627775L) >>> 16)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[23 + inPos] & 1099511627775L) >>> 24)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[23 + inPos] & 1099511627775L) >>> 32)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[24 + inPos] & 1099511627775L))) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[24 + inPos] & 1099511627775L) >>> 8)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[24 + inPos] & 1099511627775L) >>> 16)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[24 + inPos] & 1099511627775L) >>> 24)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[24 + inPos] & 1099511627775L) >>> 32)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[25 + inPos] & 1099511627775L))) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[25 + inPos] & 1099511627775L) >>> 8)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[25 + inPos] & 1099511627775L) >>> 16)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[25 + inPos] & 1099511627775L) >>> 24)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[25 + inPos] & 1099511627775L) >>> 32)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[26 + inPos] & 1099511627775L))) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[26 + inPos] & 1099511627775L) >>> 8)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[26 + inPos] & 1099511627775L) >>> 16)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[26 + inPos] & 1099511627775L) >>> 24)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[26 + inPos] & 1099511627775L) >>> 32)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[27 + inPos] & 1099511627775L))) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[27 + inPos] & 1099511627775L) >>> 8)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[27 + inPos] & 1099511627775L) >>> 16)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[27 + inPos] & 1099511627775L) >>> 24)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[27 + inPos] & 1099511627775L) >>> 32)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[28 + inPos] & 1099511627775L))) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[28 + inPos] & 1099511627775L) >>> 8)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[28 + inPos] & 1099511627775L) >>> 16)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[28 + inPos] & 1099511627775L) >>> 24)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[28 + inPos] & 1099511627775L) >>> 32)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[29 + inPos] & 1099511627775L))) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[29 + inPos] & 1099511627775L) >>> 8)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[29 + inPos] & 1099511627775L) >>> 16)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[29 + inPos] & 1099511627775L) >>> 24)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[29 + inPos] & 1099511627775L) >>> 32)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[30 + inPos] & 1099511627775L))) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[30 + inPos] & 1099511627775L) >>> 8)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[30 + inPos] & 1099511627775L) >>> 16)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[30 + inPos] & 1099511627775L) >>> 24)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[30 + inPos] & 1099511627775L) >>> 32)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [________________________________76543210]
((in[31 + inPos] & 1099511627775L))) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________54321098________]
((in[31 + inPos] & 1099511627775L) >>> 8)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________32109876________________]
((in[31 + inPos] & 1099511627775L) >>> 16)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________10987654________________________]
((in[31 + inPos] & 1099511627775L) >>> 24)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [98765432________________________________]
((in[31 + inPos] & 1099511627775L) >>> 32)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L);
out[ 1 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[ 6 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[ 7 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[ 8 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[ 9 + inPos]) << 32) & 1099511627775L);
out[ 2 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[11 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[12 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[13 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[14 + inPos]) << 32) & 1099511627775L);
out[ 3 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[18 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[19 + inPos]) << 32) & 1099511627775L);
out[ 4 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[21 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[22 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[23 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[24 + inPos]) << 32) & 1099511627775L);
out[ 5 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[27 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[28 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[29 + inPos]) << 32) & 1099511627775L);
out[ 6 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L);
out[ 7 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[38 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[39 + inPos]) << 32) & 1099511627775L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L);
out[ 1 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get( 6 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get( 7 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get( 8 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get( 9 + inPos)) << 32) & 1099511627775L);
out[ 2 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(12 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(13 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(14 + inPos)) << 32) & 1099511627775L);
out[ 3 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(18 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(19 + inPos)) << 32) & 1099511627775L);
out[ 4 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(22 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(23 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(24 + inPos)) << 32) & 1099511627775L);
out[ 5 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(27 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(28 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(29 + inPos)) << 32) & 1099511627775L);
out[ 6 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L);
out[ 7 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(38 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(39 + inPos)) << 32) & 1099511627775L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L);
out[ 1 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[ 5 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[ 6 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[ 7 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[ 8 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[ 9 + inPos]) << 32) & 1099511627775L);
out[ 2 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[10 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[11 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[12 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[13 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[14 + inPos]) << 32) & 1099511627775L);
out[ 3 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[18 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[19 + inPos]) << 32) & 1099511627775L);
out[ 4 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[20 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[21 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[22 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[23 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[24 + inPos]) << 32) & 1099511627775L);
out[ 5 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[27 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[28 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[29 + inPos]) << 32) & 1099511627775L);
out[ 6 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L);
out[ 7 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[38 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[39 + inPos]) << 32) & 1099511627775L);
out[ 8 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[41 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[42 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[43 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[44 + inPos]) << 32) & 1099511627775L);
out[ 9 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[48 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[49 + inPos]) << 32) & 1099511627775L);
out[10 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[50 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[51 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[52 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[53 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[54 + inPos]) << 32) & 1099511627775L);
out[11 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[55 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[56 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[57 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[58 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[59 + inPos]) << 32) & 1099511627775L);
out[12 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[63 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[64 + inPos]) << 32) & 1099511627775L);
out[13 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[65 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[66 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[67 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[68 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[69 + inPos]) << 32) & 1099511627775L);
out[14 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[70 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[71 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[72 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[73 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[74 + inPos]) << 32) & 1099511627775L);
out[15 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[78 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[79 + inPos]) << 32) & 1099511627775L);
out[16 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[80 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[81 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[82 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[83 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[84 + inPos]) << 32) & 1099511627775L);
out[17 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[85 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[86 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[87 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[88 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[89 + inPos]) << 32) & 1099511627775L);
out[18 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[93 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[94 + inPos]) << 32) & 1099511627775L);
out[19 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[95 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[96 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[97 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[98 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[99 + inPos]) << 32) & 1099511627775L);
out[20 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[100 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[101 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[102 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[103 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[104 + inPos]) << 32) & 1099511627775L);
out[21 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[108 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[109 + inPos]) << 32) & 1099511627775L);
out[22 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[110 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[111 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[112 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[113 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[114 + inPos]) << 32) & 1099511627775L);
out[23 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[115 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[116 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[117 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[118 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[119 + inPos]) << 32) & 1099511627775L);
out[24 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[120 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[121 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[122 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[123 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[124 + inPos]) << 32) & 1099511627775L);
out[25 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[125 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[126 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[127 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[128 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[129 + inPos]) << 32) & 1099511627775L);
out[26 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[130 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[131 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[132 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[133 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[134 + inPos]) << 32) & 1099511627775L);
out[27 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[135 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[136 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[137 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[138 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[139 + inPos]) << 32) & 1099511627775L);
out[28 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[140 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[141 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[142 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[143 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[144 + inPos]) << 32) & 1099511627775L);
out[29 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[145 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[146 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[147 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[148 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[149 + inPos]) << 32) & 1099511627775L);
out[30 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[150 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[151 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[152 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[153 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[154 + inPos]) << 32) & 1099511627775L);
out[31 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in[155 + inPos]) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in[156 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in[157 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in[158 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in[159 + inPos]) << 32) & 1099511627775L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L);
out[ 1 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get( 5 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get( 6 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get( 7 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get( 8 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get( 9 + inPos)) << 32) & 1099511627775L);
out[ 2 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(10 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(11 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(12 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(13 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(14 + inPos)) << 32) & 1099511627775L);
out[ 3 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(18 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(19 + inPos)) << 32) & 1099511627775L);
out[ 4 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(20 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(21 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(22 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(23 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(24 + inPos)) << 32) & 1099511627775L);
out[ 5 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(27 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(28 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(29 + inPos)) << 32) & 1099511627775L);
out[ 6 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L);
out[ 7 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(38 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(39 + inPos)) << 32) & 1099511627775L);
out[ 8 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(42 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(43 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(44 + inPos)) << 32) & 1099511627775L);
out[ 9 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(48 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(49 + inPos)) << 32) & 1099511627775L);
out[10 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(50 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(51 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(52 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(53 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(54 + inPos)) << 32) & 1099511627775L);
out[11 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(55 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(56 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(57 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(58 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(59 + inPos)) << 32) & 1099511627775L);
out[12 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(63 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(64 + inPos)) << 32) & 1099511627775L);
out[13 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(65 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(66 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(67 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(68 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(69 + inPos)) << 32) & 1099511627775L);
out[14 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(70 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(71 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(72 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(73 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(74 + inPos)) << 32) & 1099511627775L);
out[15 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(78 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(79 + inPos)) << 32) & 1099511627775L);
out[16 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(80 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(81 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(82 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(83 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(84 + inPos)) << 32) & 1099511627775L);
out[17 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(85 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(86 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(87 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(88 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(89 + inPos)) << 32) & 1099511627775L);
out[18 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(93 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(94 + inPos)) << 32) & 1099511627775L);
out[19 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(95 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(96 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(97 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(98 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(99 + inPos)) << 32) & 1099511627775L);
out[20 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(100 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(101 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(102 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(103 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(104 + inPos)) << 32) & 1099511627775L);
out[21 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(108 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(109 + inPos)) << 32) & 1099511627775L);
out[22 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(110 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(111 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(112 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(113 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(114 + inPos)) << 32) & 1099511627775L);
out[23 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(115 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(116 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(117 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(118 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(119 + inPos)) << 32) & 1099511627775L);
out[24 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(120 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(121 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(122 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(123 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(124 + inPos)) << 32) & 1099511627775L);
out[25 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(125 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(126 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(127 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(128 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(129 + inPos)) << 32) & 1099511627775L);
out[26 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(130 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(131 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(132 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(133 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(134 + inPos)) << 32) & 1099511627775L);
out[27 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(135 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(136 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(137 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(138 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(139 + inPos)) << 32) & 1099511627775L);
out[28 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(140 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(141 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(142 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(143 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(144 + inPos)) << 32) & 1099511627775L);
out[29 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(145 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(146 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(147 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(148 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(149 + inPos)) << 32) & 1099511627775L);
out[30 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(150 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(151 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(152 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(153 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(154 + inPos)) << 32) & 1099511627775L);
out[31 + outPos] =
// [76543210]
// [________________________________76543210]
((((long)in.get(155 + inPos)) ) & 255L)
| // [76543210]
// [________________________54321098________]
((((long)in.get(156 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________32109876________________]
((((long)in.get(157 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________10987654________________________]
((((long)in.get(158 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [98765432________________________________]
((((long)in.get(159 + inPos)) << 32) & 1099511627775L);
}
}
private static final class Packer41 extends BytePackerForLong {
private Packer41() {
super(41);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210]
((in[ 0 + inPos] & 2199023255551L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________54321098________]
((in[ 0 + inPos] & 2199023255551L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________32109876________________]
((in[ 0 + inPos] & 2199023255551L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________10987654________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_98765432________________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_______0]
// [0________________________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 40)
| // [7654321_]
// [__________________________________6543210]
((in[ 1 + inPos] & 2199023255551L) << 1)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_______]
((in[ 1 + inPos] & 2199023255551L) >>> 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________21098765_______________]
((in[ 1 + inPos] & 2199023255551L) >>> 15)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________09876543_______________________]
((in[ 1 + inPos] & 2199023255551L) >>> 23)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__87654321_______________________________]
((in[ 1 + inPos] & 2199023255551L) >>> 31)) & 255);
out[10 + outPos] = (byte)((
// [______10]
// [09_______________________________________]
((in[ 1 + inPos] & 2199023255551L) >>> 39)
| // [765432__]
// [___________________________________543210]
((in[ 2 + inPos] & 2199023255551L) << 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [___________________________32109876______]
((in[ 2 + inPos] & 2199023255551L) >>> 6)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [___________________10987654______________]
((in[ 2 + inPos] & 2199023255551L) >>> 14)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___________98765432______________________]
((in[ 2 + inPos] & 2199023255551L) >>> 22)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [___76543210______________________________]
((in[ 2 + inPos] & 2199023255551L) >>> 30)) & 255);
out[15 + outPos] = (byte)((
// [_____210]
// [098______________________________________]
((in[ 2 + inPos] & 2199023255551L) >>> 38)
| // [76543___]
// [____________________________________43210]
((in[ 3 + inPos] & 2199023255551L) << 3)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_____]
((in[ 3 + inPos] & 2199023255551L) >>> 5)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________09876543_____________]
((in[ 3 + inPos] & 2199023255551L) >>> 13)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________87654321_____________________]
((in[ 3 + inPos] & 2199023255551L) >>> 21)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____65432109_____________________________]
((in[ 3 + inPos] & 2199023255551L) >>> 29)) & 255);
out[20 + outPos] = (byte)((
// [____3210]
// [0987_____________________________________]
((in[ 3 + inPos] & 2199023255551L) >>> 37)
| // [7654____]
// [_____________________________________3210]
((in[ 4 + inPos] & 2199023255551L) << 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654____]
((in[ 4 + inPos] & 2199023255551L) >>> 4)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____________________98765432____________]
((in[ 4 + inPos] & 2199023255551L) >>> 12)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_____________76543210____________________]
((in[ 4 + inPos] & 2199023255551L) >>> 20)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_____54321098____________________________]
((in[ 4 + inPos] & 2199023255551L) >>> 28)) & 255);
out[25 + outPos] = (byte)((
// [___43210]
// [09876____________________________________]
((in[ 4 + inPos] & 2199023255551L) >>> 36)
| // [765_____]
// [______________________________________210]
((in[ 5 + inPos] & 2199023255551L) << 5)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________________________09876543___]
((in[ 5 + inPos] & 2199023255551L) >>> 3)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________________87654321___________]
((in[ 5 + inPos] & 2199023255551L) >>> 11)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______________65432109___________________]
((in[ 5 + inPos] & 2199023255551L) >>> 19)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______43210987___________________________]
((in[ 5 + inPos] & 2199023255551L) >>> 27)) & 255);
out[30 + outPos] = (byte)((
// [__543210]
// [098765___________________________________]
((in[ 5 + inPos] & 2199023255551L) >>> 35)
| // [76______]
// [_______________________________________10]
((in[ 6 + inPos] & 2199023255551L) << 6)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432__]
((in[ 6 + inPos] & 2199023255551L) >>> 2)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_______________________76543210__________]
((in[ 6 + inPos] & 2199023255551L) >>> 10)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_______________54321098__________________]
((in[ 6 + inPos] & 2199023255551L) >>> 18)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_______32109876__________________________]
((in[ 6 + inPos] & 2199023255551L) >>> 26)) & 255);
out[35 + outPos] = (byte)((
// [_6543210]
// [0987654__________________________________]
((in[ 6 + inPos] & 2199023255551L) >>> 34)
| // [7_______]
// [________________________________________0]
((in[ 7 + inPos] & 2199023255551L) << 7)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_]
((in[ 7 + inPos] & 2199023255551L) >>> 1)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________65432109_________]
((in[ 7 + inPos] & 2199023255551L) >>> 9)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________43210987_________________]
((in[ 7 + inPos] & 2199023255551L) >>> 17)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________21098765_________________________]
((in[ 7 + inPos] & 2199023255551L) >>> 25)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [09876543_________________________________]
((in[ 7 + inPos] & 2199023255551L) >>> 33)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210]
((in[ 0 + inPos] & 2199023255551L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________54321098________]
((in[ 0 + inPos] & 2199023255551L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________32109876________________]
((in[ 0 + inPos] & 2199023255551L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________10987654________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_98765432________________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_______0]
// [0________________________________________]
((in[ 0 + inPos] & 2199023255551L) >>> 40)
| // [7654321_]
// [__________________________________6543210]
((in[ 1 + inPos] & 2199023255551L) << 1)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_______]
((in[ 1 + inPos] & 2199023255551L) >>> 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________21098765_______________]
((in[ 1 + inPos] & 2199023255551L) >>> 15)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________09876543_______________________]
((in[ 1 + inPos] & 2199023255551L) >>> 23)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__87654321_______________________________]
((in[ 1 + inPos] & 2199023255551L) >>> 31)) & 255);
out[10 + outPos] = (byte)((
// [______10]
// [09_______________________________________]
((in[ 1 + inPos] & 2199023255551L) >>> 39)
| // [765432__]
// [___________________________________543210]
((in[ 2 + inPos] & 2199023255551L) << 2)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [___________________________32109876______]
((in[ 2 + inPos] & 2199023255551L) >>> 6)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [___________________10987654______________]
((in[ 2 + inPos] & 2199023255551L) >>> 14)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___________98765432______________________]
((in[ 2 + inPos] & 2199023255551L) >>> 22)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [___76543210______________________________]
((in[ 2 + inPos] & 2199023255551L) >>> 30)) & 255);
out[15 + outPos] = (byte)((
// [_____210]
// [098______________________________________]
((in[ 2 + inPos] & 2199023255551L) >>> 38)
| // [76543___]
// [____________________________________43210]
((in[ 3 + inPos] & 2199023255551L) << 3)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_____]
((in[ 3 + inPos] & 2199023255551L) >>> 5)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________09876543_____________]
((in[ 3 + inPos] & 2199023255551L) >>> 13)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________87654321_____________________]
((in[ 3 + inPos] & 2199023255551L) >>> 21)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____65432109_____________________________]
((in[ 3 + inPos] & 2199023255551L) >>> 29)) & 255);
out[20 + outPos] = (byte)((
// [____3210]
// [0987_____________________________________]
((in[ 3 + inPos] & 2199023255551L) >>> 37)
| // [7654____]
// [_____________________________________3210]
((in[ 4 + inPos] & 2199023255551L) << 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654____]
((in[ 4 + inPos] & 2199023255551L) >>> 4)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____________________98765432____________]
((in[ 4 + inPos] & 2199023255551L) >>> 12)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_____________76543210____________________]
((in[ 4 + inPos] & 2199023255551L) >>> 20)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_____54321098____________________________]
((in[ 4 + inPos] & 2199023255551L) >>> 28)) & 255);
out[25 + outPos] = (byte)((
// [___43210]
// [09876____________________________________]
((in[ 4 + inPos] & 2199023255551L) >>> 36)
| // [765_____]
// [______________________________________210]
((in[ 5 + inPos] & 2199023255551L) << 5)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________________________09876543___]
((in[ 5 + inPos] & 2199023255551L) >>> 3)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________________87654321___________]
((in[ 5 + inPos] & 2199023255551L) >>> 11)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______________65432109___________________]
((in[ 5 + inPos] & 2199023255551L) >>> 19)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______43210987___________________________]
((in[ 5 + inPos] & 2199023255551L) >>> 27)) & 255);
out[30 + outPos] = (byte)((
// [__543210]
// [098765___________________________________]
((in[ 5 + inPos] & 2199023255551L) >>> 35)
| // [76______]
// [_______________________________________10]
((in[ 6 + inPos] & 2199023255551L) << 6)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432__]
((in[ 6 + inPos] & 2199023255551L) >>> 2)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_______________________76543210__________]
((in[ 6 + inPos] & 2199023255551L) >>> 10)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_______________54321098__________________]
((in[ 6 + inPos] & 2199023255551L) >>> 18)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_______32109876__________________________]
((in[ 6 + inPos] & 2199023255551L) >>> 26)) & 255);
out[35 + outPos] = (byte)((
// [_6543210]
// [0987654__________________________________]
((in[ 6 + inPos] & 2199023255551L) >>> 34)
| // [7_______]
// [________________________________________0]
((in[ 7 + inPos] & 2199023255551L) << 7)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_]
((in[ 7 + inPos] & 2199023255551L) >>> 1)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________65432109_________]
((in[ 7 + inPos] & 2199023255551L) >>> 9)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________43210987_________________]
((in[ 7 + inPos] & 2199023255551L) >>> 17)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________21098765_________________________]
((in[ 7 + inPos] & 2199023255551L) >>> 25)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [09876543_________________________________]
((in[ 7 + inPos] & 2199023255551L) >>> 33)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210]
((in[ 8 + inPos] & 2199023255551L))) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_________________________54321098________]
((in[ 8 + inPos] & 2199023255551L) >>> 8)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_________________32109876________________]
((in[ 8 + inPos] & 2199023255551L) >>> 16)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_________10987654________________________]
((in[ 8 + inPos] & 2199023255551L) >>> 24)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_98765432________________________________]
((in[ 8 + inPos] & 2199023255551L) >>> 32)) & 255);
out[46 + outPos] = (byte)((
// [_______0]
// [0________________________________________]
((in[ 8 + inPos] & 2199023255551L) >>> 40)
| // [7654321_]
// [__________________________________6543210]
((in[ 9 + inPos] & 2199023255551L) << 1)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_______]
((in[ 9 + inPos] & 2199023255551L) >>> 7)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [__________________21098765_______________]
((in[ 9 + inPos] & 2199023255551L) >>> 15)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [__________09876543_______________________]
((in[ 9 + inPos] & 2199023255551L) >>> 23)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__87654321_______________________________]
((in[ 9 + inPos] & 2199023255551L) >>> 31)) & 255);
out[51 + outPos] = (byte)((
// [______10]
// [09_______________________________________]
((in[ 9 + inPos] & 2199023255551L) >>> 39)
| // [765432__]
// [___________________________________543210]
((in[10 + inPos] & 2199023255551L) << 2)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [___________________________32109876______]
((in[10 + inPos] & 2199023255551L) >>> 6)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [___________________10987654______________]
((in[10 + inPos] & 2199023255551L) >>> 14)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [___________98765432______________________]
((in[10 + inPos] & 2199023255551L) >>> 22)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [___76543210______________________________]
((in[10 + inPos] & 2199023255551L) >>> 30)) & 255);
out[56 + outPos] = (byte)((
// [_____210]
// [098______________________________________]
((in[10 + inPos] & 2199023255551L) >>> 38)
| // [76543___]
// [____________________________________43210]
((in[11 + inPos] & 2199023255551L) << 3)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_____]
((in[11 + inPos] & 2199023255551L) >>> 5)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____________________09876543_____________]
((in[11 + inPos] & 2199023255551L) >>> 13)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [____________87654321_____________________]
((in[11 + inPos] & 2199023255551L) >>> 21)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____65432109_____________________________]
((in[11 + inPos] & 2199023255551L) >>> 29)) & 255);
out[61 + outPos] = (byte)((
// [____3210]
// [0987_____________________________________]
((in[11 + inPos] & 2199023255551L) >>> 37)
| // [7654____]
// [_____________________________________3210]
((in[12 + inPos] & 2199023255551L) << 4)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654____]
((in[12 + inPos] & 2199023255551L) >>> 4)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____________________98765432____________]
((in[12 + inPos] & 2199023255551L) >>> 12)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_____________76543210____________________]
((in[12 + inPos] & 2199023255551L) >>> 20)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_____54321098____________________________]
((in[12 + inPos] & 2199023255551L) >>> 28)) & 255);
out[66 + outPos] = (byte)((
// [___43210]
// [09876____________________________________]
((in[12 + inPos] & 2199023255551L) >>> 36)
| // [765_____]
// [______________________________________210]
((in[13 + inPos] & 2199023255551L) << 5)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______________________________09876543___]
((in[13 + inPos] & 2199023255551L) >>> 3)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [______________________87654321___________]
((in[13 + inPos] & 2199023255551L) >>> 11)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [______________65432109___________________]
((in[13 + inPos] & 2199023255551L) >>> 19)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [______43210987___________________________]
((in[13 + inPos] & 2199023255551L) >>> 27)) & 255);
out[71 + outPos] = (byte)((
// [__543210]
// [098765___________________________________]
((in[13 + inPos] & 2199023255551L) >>> 35)
| // [76______]
// [_______________________________________10]
((in[14 + inPos] & 2199023255551L) << 6)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432__]
((in[14 + inPos] & 2199023255551L) >>> 2)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [_______________________76543210__________]
((in[14 + inPos] & 2199023255551L) >>> 10)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_______________54321098__________________]
((in[14 + inPos] & 2199023255551L) >>> 18)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_______32109876__________________________]
((in[14 + inPos] & 2199023255551L) >>> 26)) & 255);
out[76 + outPos] = (byte)((
// [_6543210]
// [0987654__________________________________]
((in[14 + inPos] & 2199023255551L) >>> 34)
| // [7_______]
// [________________________________________0]
((in[15 + inPos] & 2199023255551L) << 7)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_]
((in[15 + inPos] & 2199023255551L) >>> 1)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________________65432109_________]
((in[15 + inPos] & 2199023255551L) >>> 9)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________________43210987_________________]
((in[15 + inPos] & 2199023255551L) >>> 17)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________21098765_________________________]
((in[15 + inPos] & 2199023255551L) >>> 25)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [09876543_________________________________]
((in[15 + inPos] & 2199023255551L) >>> 33)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210]
((in[16 + inPos] & 2199023255551L))) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [_________________________54321098________]
((in[16 + inPos] & 2199023255551L) >>> 8)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_________________32109876________________]
((in[16 + inPos] & 2199023255551L) >>> 16)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_________10987654________________________]
((in[16 + inPos] & 2199023255551L) >>> 24)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_98765432________________________________]
((in[16 + inPos] & 2199023255551L) >>> 32)) & 255);
out[87 + outPos] = (byte)((
// [_______0]
// [0________________________________________]
((in[16 + inPos] & 2199023255551L) >>> 40)
| // [7654321_]
// [__________________________________6543210]
((in[17 + inPos] & 2199023255551L) << 1)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_______]
((in[17 + inPos] & 2199023255551L) >>> 7)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [__________________21098765_______________]
((in[17 + inPos] & 2199023255551L) >>> 15)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [__________09876543_______________________]
((in[17 + inPos] & 2199023255551L) >>> 23)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [__87654321_______________________________]
((in[17 + inPos] & 2199023255551L) >>> 31)) & 255);
out[92 + outPos] = (byte)((
// [______10]
// [09_______________________________________]
((in[17 + inPos] & 2199023255551L) >>> 39)
| // [765432__]
// [___________________________________543210]
((in[18 + inPos] & 2199023255551L) << 2)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [___________________________32109876______]
((in[18 + inPos] & 2199023255551L) >>> 6)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [___________________10987654______________]
((in[18 + inPos] & 2199023255551L) >>> 14)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [___________98765432______________________]
((in[18 + inPos] & 2199023255551L) >>> 22)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [___76543210______________________________]
((in[18 + inPos] & 2199023255551L) >>> 30)) & 255);
out[97 + outPos] = (byte)((
// [_____210]
// [098______________________________________]
((in[18 + inPos] & 2199023255551L) >>> 38)
| // [76543___]
// [____________________________________43210]
((in[19 + inPos] & 2199023255551L) << 3)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_____]
((in[19 + inPos] & 2199023255551L) >>> 5)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________________09876543_____________]
((in[19 + inPos] & 2199023255551L) >>> 13)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____________87654321_____________________]
((in[19 + inPos] & 2199023255551L) >>> 21)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____65432109_____________________________]
((in[19 + inPos] & 2199023255551L) >>> 29)) & 255);
out[102 + outPos] = (byte)((
// [____3210]
// [0987_____________________________________]
((in[19 + inPos] & 2199023255551L) >>> 37)
| // [7654____]
// [_____________________________________3210]
((in[20 + inPos] & 2199023255551L) << 4)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654____]
((in[20 + inPos] & 2199023255551L) >>> 4)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [_____________________98765432____________]
((in[20 + inPos] & 2199023255551L) >>> 12)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [_____________76543210____________________]
((in[20 + inPos] & 2199023255551L) >>> 20)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [_____54321098____________________________]
((in[20 + inPos] & 2199023255551L) >>> 28)) & 255);
out[107 + outPos] = (byte)((
// [___43210]
// [09876____________________________________]
((in[20 + inPos] & 2199023255551L) >>> 36)
| // [765_____]
// [______________________________________210]
((in[21 + inPos] & 2199023255551L) << 5)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [______________________________09876543___]
((in[21 + inPos] & 2199023255551L) >>> 3)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [______________________87654321___________]
((in[21 + inPos] & 2199023255551L) >>> 11)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [______________65432109___________________]
((in[21 + inPos] & 2199023255551L) >>> 19)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [______43210987___________________________]
((in[21 + inPos] & 2199023255551L) >>> 27)) & 255);
out[112 + outPos] = (byte)((
// [__543210]
// [098765___________________________________]
((in[21 + inPos] & 2199023255551L) >>> 35)
| // [76______]
// [_______________________________________10]
((in[22 + inPos] & 2199023255551L) << 6)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432__]
((in[22 + inPos] & 2199023255551L) >>> 2)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_______________________76543210__________]
((in[22 + inPos] & 2199023255551L) >>> 10)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_______________54321098__________________]
((in[22 + inPos] & 2199023255551L) >>> 18)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_______32109876__________________________]
((in[22 + inPos] & 2199023255551L) >>> 26)) & 255);
out[117 + outPos] = (byte)((
// [_6543210]
// [0987654__________________________________]
((in[22 + inPos] & 2199023255551L) >>> 34)
| // [7_______]
// [________________________________________0]
((in[23 + inPos] & 2199023255551L) << 7)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_]
((in[23 + inPos] & 2199023255551L) >>> 1)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________________65432109_________]
((in[23 + inPos] & 2199023255551L) >>> 9)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________43210987_________________]
((in[23 + inPos] & 2199023255551L) >>> 17)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________21098765_________________________]
((in[23 + inPos] & 2199023255551L) >>> 25)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [09876543_________________________________]
((in[23 + inPos] & 2199023255551L) >>> 33)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210]
((in[24 + inPos] & 2199023255551L))) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_________________________54321098________]
((in[24 + inPos] & 2199023255551L) >>> 8)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_________________32109876________________]
((in[24 + inPos] & 2199023255551L) >>> 16)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_________10987654________________________]
((in[24 + inPos] & 2199023255551L) >>> 24)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_98765432________________________________]
((in[24 + inPos] & 2199023255551L) >>> 32)) & 255);
out[128 + outPos] = (byte)((
// [_______0]
// [0________________________________________]
((in[24 + inPos] & 2199023255551L) >>> 40)
| // [7654321_]
// [__________________________________6543210]
((in[25 + inPos] & 2199023255551L) << 1)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_______]
((in[25 + inPos] & 2199023255551L) >>> 7)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__________________21098765_______________]
((in[25 + inPos] & 2199023255551L) >>> 15)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [__________09876543_______________________]
((in[25 + inPos] & 2199023255551L) >>> 23)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [__87654321_______________________________]
((in[25 + inPos] & 2199023255551L) >>> 31)) & 255);
out[133 + outPos] = (byte)((
// [______10]
// [09_______________________________________]
((in[25 + inPos] & 2199023255551L) >>> 39)
| // [765432__]
// [___________________________________543210]
((in[26 + inPos] & 2199023255551L) << 2)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [___________________________32109876______]
((in[26 + inPos] & 2199023255551L) >>> 6)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [___________________10987654______________]
((in[26 + inPos] & 2199023255551L) >>> 14)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [___________98765432______________________]
((in[26 + inPos] & 2199023255551L) >>> 22)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [___76543210______________________________]
((in[26 + inPos] & 2199023255551L) >>> 30)) & 255);
out[138 + outPos] = (byte)((
// [_____210]
// [098______________________________________]
((in[26 + inPos] & 2199023255551L) >>> 38)
| // [76543___]
// [____________________________________43210]
((in[27 + inPos] & 2199023255551L) << 3)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_____]
((in[27 + inPos] & 2199023255551L) >>> 5)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [____________________09876543_____________]
((in[27 + inPos] & 2199023255551L) >>> 13)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [____________87654321_____________________]
((in[27 + inPos] & 2199023255551L) >>> 21)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [____65432109_____________________________]
((in[27 + inPos] & 2199023255551L) >>> 29)) & 255);
out[143 + outPos] = (byte)((
// [____3210]
// [0987_____________________________________]
((in[27 + inPos] & 2199023255551L) >>> 37)
| // [7654____]
// [_____________________________________3210]
((in[28 + inPos] & 2199023255551L) << 4)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654____]
((in[28 + inPos] & 2199023255551L) >>> 4)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [_____________________98765432____________]
((in[28 + inPos] & 2199023255551L) >>> 12)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [_____________76543210____________________]
((in[28 + inPos] & 2199023255551L) >>> 20)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_____54321098____________________________]
((in[28 + inPos] & 2199023255551L) >>> 28)) & 255);
out[148 + outPos] = (byte)((
// [___43210]
// [09876____________________________________]
((in[28 + inPos] & 2199023255551L) >>> 36)
| // [765_____]
// [______________________________________210]
((in[29 + inPos] & 2199023255551L) << 5)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [______________________________09876543___]
((in[29 + inPos] & 2199023255551L) >>> 3)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [______________________87654321___________]
((in[29 + inPos] & 2199023255551L) >>> 11)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [______________65432109___________________]
((in[29 + inPos] & 2199023255551L) >>> 19)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [______43210987___________________________]
((in[29 + inPos] & 2199023255551L) >>> 27)) & 255);
out[153 + outPos] = (byte)((
// [__543210]
// [098765___________________________________]
((in[29 + inPos] & 2199023255551L) >>> 35)
| // [76______]
// [_______________________________________10]
((in[30 + inPos] & 2199023255551L) << 6)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432__]
((in[30 + inPos] & 2199023255551L) >>> 2)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [_______________________76543210__________]
((in[30 + inPos] & 2199023255551L) >>> 10)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [_______________54321098__________________]
((in[30 + inPos] & 2199023255551L) >>> 18)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [_______32109876__________________________]
((in[30 + inPos] & 2199023255551L) >>> 26)) & 255);
out[158 + outPos] = (byte)((
// [_6543210]
// [0987654__________________________________]
((in[30 + inPos] & 2199023255551L) >>> 34)
| // [7_______]
// [________________________________________0]
((in[31 + inPos] & 2199023255551L) << 7)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_]
((in[31 + inPos] & 2199023255551L) >>> 1)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________________________65432109_________]
((in[31 + inPos] & 2199023255551L) >>> 9)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________43210987_________________]
((in[31 + inPos] & 2199023255551L) >>> 17)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________21098765_________________________]
((in[31 + inPos] & 2199023255551L) >>> 25)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [09876543_________________________________]
((in[31 + inPos] & 2199023255551L) >>> 33)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in[ 5 + inPos]) << 40) & 2199023255551L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in[ 5 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in[ 6 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in[ 7 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in[ 8 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in[ 9 + inPos]) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in[10 + inPos]) << 39) & 2199023255551L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in[10 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in[11 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in[12 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in[13 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in[14 + inPos]) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in[15 + inPos]) << 38) & 2199023255551L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in[15 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in[16 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in[17 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in[18 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in[19 + inPos]) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in[20 + inPos]) << 37) & 2199023255551L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in[20 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in[21 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in[22 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in[23 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in[24 + inPos]) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in[25 + inPos]) << 36) & 2199023255551L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in[25 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in[26 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in[27 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in[28 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in[29 + inPos]) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in[30 + inPos]) << 35) & 2199023255551L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in[30 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in[31 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in[32 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in[33 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in[34 + inPos]) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in[35 + inPos]) << 34) & 2199023255551L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in[35 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in[36 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in[37 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in[38 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in[39 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in[40 + inPos]) << 33) & 2199023255551L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 2199023255551L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in.get( 5 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in.get( 6 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in.get( 7 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in.get( 8 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in.get( 9 + inPos)) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in.get(10 + inPos)) << 39) & 2199023255551L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in.get(10 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in.get(11 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in.get(12 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in.get(13 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in.get(14 + inPos)) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in.get(15 + inPos)) << 38) & 2199023255551L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in.get(15 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in.get(16 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in.get(17 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in.get(18 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in.get(19 + inPos)) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in.get(20 + inPos)) << 37) & 2199023255551L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in.get(20 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in.get(21 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in.get(22 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in.get(23 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in.get(24 + inPos)) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in.get(25 + inPos)) << 36) & 2199023255551L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in.get(25 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in.get(26 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in.get(27 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in.get(28 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in.get(29 + inPos)) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in.get(30 + inPos)) << 35) & 2199023255551L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in.get(30 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in.get(31 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in.get(32 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in.get(33 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in.get(34 + inPos)) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in.get(35 + inPos)) << 34) & 2199023255551L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in.get(35 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in.get(36 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in.get(37 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in.get(38 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in.get(39 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in.get(40 + inPos)) << 33) & 2199023255551L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in[ 5 + inPos]) << 40) & 2199023255551L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in[ 5 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in[ 6 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in[ 7 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in[ 8 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in[ 9 + inPos]) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in[10 + inPos]) << 39) & 2199023255551L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in[10 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in[11 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in[12 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in[13 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in[14 + inPos]) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in[15 + inPos]) << 38) & 2199023255551L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in[15 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in[16 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in[17 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in[18 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in[19 + inPos]) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in[20 + inPos]) << 37) & 2199023255551L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in[20 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in[21 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in[22 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in[23 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in[24 + inPos]) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in[25 + inPos]) << 36) & 2199023255551L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in[25 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in[26 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in[27 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in[28 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in[29 + inPos]) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in[30 + inPos]) << 35) & 2199023255551L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in[30 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in[31 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in[32 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in[33 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in[34 + inPos]) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in[35 + inPos]) << 34) & 2199023255551L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in[35 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in[36 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in[37 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in[38 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in[39 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in[40 + inPos]) << 33) & 2199023255551L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in[41 + inPos]) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in[42 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in[43 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in[44 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in[45 + inPos]) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in[46 + inPos]) << 40) & 2199023255551L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in[46 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in[47 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in[48 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in[49 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in[50 + inPos]) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in[51 + inPos]) << 39) & 2199023255551L);
out[10 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in[51 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in[52 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in[53 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in[54 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in[55 + inPos]) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in[56 + inPos]) << 38) & 2199023255551L);
out[11 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in[56 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in[57 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in[58 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in[59 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in[60 + inPos]) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in[61 + inPos]) << 37) & 2199023255551L);
out[12 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in[61 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in[62 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in[63 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in[64 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in[65 + inPos]) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in[66 + inPos]) << 36) & 2199023255551L);
out[13 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in[66 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in[67 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in[68 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in[69 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in[70 + inPos]) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in[71 + inPos]) << 35) & 2199023255551L);
out[14 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in[71 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in[72 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in[73 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in[74 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in[75 + inPos]) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in[76 + inPos]) << 34) & 2199023255551L);
out[15 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in[76 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in[77 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in[78 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in[79 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in[80 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in[81 + inPos]) << 33) & 2199023255551L);
out[16 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in[82 + inPos]) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in[83 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in[84 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in[85 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in[86 + inPos]) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in[87 + inPos]) << 40) & 2199023255551L);
out[17 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in[87 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in[88 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in[89 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in[90 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in[91 + inPos]) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in[92 + inPos]) << 39) & 2199023255551L);
out[18 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in[92 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in[93 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in[94 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in[95 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in[96 + inPos]) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in[97 + inPos]) << 38) & 2199023255551L);
out[19 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in[97 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in[98 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in[99 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in[100 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in[101 + inPos]) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in[102 + inPos]) << 37) & 2199023255551L);
out[20 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in[102 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in[103 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in[104 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in[105 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in[106 + inPos]) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in[107 + inPos]) << 36) & 2199023255551L);
out[21 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in[107 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in[108 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in[109 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in[110 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in[111 + inPos]) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in[112 + inPos]) << 35) & 2199023255551L);
out[22 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in[112 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in[113 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in[114 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in[115 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in[116 + inPos]) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in[117 + inPos]) << 34) & 2199023255551L);
out[23 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in[117 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in[118 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in[119 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in[120 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in[121 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in[122 + inPos]) << 33) & 2199023255551L);
out[24 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in[123 + inPos]) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in[124 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in[125 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in[126 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in[127 + inPos]) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in[128 + inPos]) << 40) & 2199023255551L);
out[25 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in[128 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in[129 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in[130 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in[131 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in[132 + inPos]) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in[133 + inPos]) << 39) & 2199023255551L);
out[26 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in[133 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in[134 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in[135 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in[136 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in[137 + inPos]) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in[138 + inPos]) << 38) & 2199023255551L);
out[27 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in[138 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in[139 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in[140 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in[141 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in[142 + inPos]) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in[143 + inPos]) << 37) & 2199023255551L);
out[28 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in[143 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in[144 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in[145 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in[146 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in[147 + inPos]) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in[148 + inPos]) << 36) & 2199023255551L);
out[29 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in[148 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in[149 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in[150 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in[151 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in[152 + inPos]) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in[153 + inPos]) << 35) & 2199023255551L);
out[30 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in[153 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in[154 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in[155 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in[156 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in[157 + inPos]) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in[158 + inPos]) << 34) & 2199023255551L);
out[31 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in[158 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in[159 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in[160 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in[161 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in[162 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in[163 + inPos]) << 33) & 2199023255551L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 2199023255551L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in.get( 5 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in.get( 6 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in.get( 7 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in.get( 8 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in.get( 9 + inPos)) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in.get(10 + inPos)) << 39) & 2199023255551L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in.get(10 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in.get(11 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in.get(12 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in.get(13 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in.get(14 + inPos)) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in.get(15 + inPos)) << 38) & 2199023255551L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in.get(15 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in.get(16 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in.get(17 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in.get(18 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in.get(19 + inPos)) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in.get(20 + inPos)) << 37) & 2199023255551L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in.get(20 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in.get(21 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in.get(22 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in.get(23 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in.get(24 + inPos)) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in.get(25 + inPos)) << 36) & 2199023255551L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in.get(25 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in.get(26 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in.get(27 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in.get(28 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in.get(29 + inPos)) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in.get(30 + inPos)) << 35) & 2199023255551L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in.get(30 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in.get(31 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in.get(32 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in.get(33 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in.get(34 + inPos)) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in.get(35 + inPos)) << 34) & 2199023255551L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in.get(35 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in.get(36 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in.get(37 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in.get(38 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in.get(39 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in.get(40 + inPos)) << 33) & 2199023255551L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in.get(41 + inPos)) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in.get(42 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in.get(43 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in.get(44 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in.get(45 + inPos)) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in.get(46 + inPos)) << 40) & 2199023255551L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in.get(46 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in.get(47 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in.get(48 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in.get(49 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in.get(50 + inPos)) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in.get(51 + inPos)) << 39) & 2199023255551L);
out[10 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in.get(51 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in.get(52 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in.get(53 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in.get(54 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in.get(55 + inPos)) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in.get(56 + inPos)) << 38) & 2199023255551L);
out[11 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in.get(56 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in.get(57 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in.get(58 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in.get(59 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in.get(60 + inPos)) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in.get(61 + inPos)) << 37) & 2199023255551L);
out[12 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in.get(61 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in.get(62 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in.get(63 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in.get(64 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in.get(65 + inPos)) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in.get(66 + inPos)) << 36) & 2199023255551L);
out[13 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in.get(66 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in.get(67 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in.get(68 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in.get(69 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in.get(70 + inPos)) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in.get(71 + inPos)) << 35) & 2199023255551L);
out[14 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in.get(71 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in.get(72 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in.get(73 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in.get(74 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in.get(75 + inPos)) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in.get(76 + inPos)) << 34) & 2199023255551L);
out[15 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in.get(76 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in.get(77 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in.get(78 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in.get(79 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in.get(80 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in.get(81 + inPos)) << 33) & 2199023255551L);
out[16 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in.get(82 + inPos)) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in.get(83 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in.get(84 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in.get(85 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in.get(86 + inPos)) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in.get(87 + inPos)) << 40) & 2199023255551L);
out[17 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in.get(87 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in.get(88 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in.get(89 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in.get(90 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in.get(91 + inPos)) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in.get(92 + inPos)) << 39) & 2199023255551L);
out[18 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in.get(92 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in.get(93 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in.get(94 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in.get(95 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in.get(96 + inPos)) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in.get(97 + inPos)) << 38) & 2199023255551L);
out[19 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in.get(97 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in.get(98 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in.get(99 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in.get(100 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in.get(101 + inPos)) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in.get(102 + inPos)) << 37) & 2199023255551L);
out[20 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in.get(102 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in.get(103 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in.get(104 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in.get(105 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in.get(106 + inPos)) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in.get(107 + inPos)) << 36) & 2199023255551L);
out[21 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in.get(107 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in.get(108 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in.get(109 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in.get(110 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in.get(111 + inPos)) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in.get(112 + inPos)) << 35) & 2199023255551L);
out[22 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in.get(112 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in.get(113 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in.get(114 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in.get(115 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in.get(116 + inPos)) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in.get(117 + inPos)) << 34) & 2199023255551L);
out[23 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in.get(117 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in.get(118 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in.get(119 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in.get(120 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in.get(121 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in.get(122 + inPos)) << 33) & 2199023255551L);
out[24 + outPos] =
// [76543210]
// [_________________________________76543210]
((((long)in.get(123 + inPos)) ) & 255L)
| // [76543210]
// [_________________________54321098________]
((((long)in.get(124 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________32109876________________]
((((long)in.get(125 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________10987654________________________]
((((long)in.get(126 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_98765432________________________________]
((((long)in.get(127 + inPos)) << 32) & 1099511627775L)
| // [_______0]
// [0________________________________________]
((((long)in.get(128 + inPos)) << 40) & 2199023255551L);
out[25 + outPos] =
// [7654321_]
// [__________________________________6543210]
((((long)in.get(128 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________43210987_______]
((((long)in.get(129 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________21098765_______________]
((((long)in.get(130 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________09876543_______________________]
((((long)in.get(131 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__87654321_______________________________]
((((long)in.get(132 + inPos)) << 31) & 549755813887L)
| // [______10]
// [09_______________________________________]
((((long)in.get(133 + inPos)) << 39) & 2199023255551L);
out[26 + outPos] =
// [765432__]
// [___________________________________543210]
((((long)in.get(133 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________32109876______]
((((long)in.get(134 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________10987654______________]
((((long)in.get(135 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________98765432______________________]
((((long)in.get(136 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___76543210______________________________]
((((long)in.get(137 + inPos)) << 30) & 274877906943L)
| // [_____210]
// [098______________________________________]
((((long)in.get(138 + inPos)) << 38) & 2199023255551L);
out[27 + outPos] =
// [76543___]
// [____________________________________43210]
((((long)in.get(138 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________21098765_____]
((((long)in.get(139 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________09876543_____________]
((((long)in.get(140 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________87654321_____________________]
((((long)in.get(141 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____65432109_____________________________]
((((long)in.get(142 + inPos)) << 29) & 137438953471L)
| // [____3210]
// [0987_____________________________________]
((((long)in.get(143 + inPos)) << 37) & 2199023255551L);
out[28 + outPos] =
// [7654____]
// [_____________________________________3210]
((((long)in.get(143 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________10987654____]
((((long)in.get(144 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________98765432____________]
((((long)in.get(145 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________76543210____________________]
((((long)in.get(146 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____54321098____________________________]
((((long)in.get(147 + inPos)) << 28) & 68719476735L)
| // [___43210]
// [09876____________________________________]
((((long)in.get(148 + inPos)) << 36) & 2199023255551L);
out[29 + outPos] =
// [765_____]
// [______________________________________210]
((((long)in.get(148 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________09876543___]
((((long)in.get(149 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________87654321___________]
((((long)in.get(150 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________65432109___________________]
((((long)in.get(151 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______43210987___________________________]
((((long)in.get(152 + inPos)) << 27) & 34359738367L)
| // [__543210]
// [098765___________________________________]
((((long)in.get(153 + inPos)) << 35) & 2199023255551L);
out[30 + outPos] =
// [76______]
// [_______________________________________10]
((((long)in.get(153 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________98765432__]
((((long)in.get(154 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________76543210__________]
((((long)in.get(155 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________54321098__________________]
((((long)in.get(156 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______32109876__________________________]
((((long)in.get(157 + inPos)) << 26) & 17179869183L)
| // [_6543210]
// [0987654__________________________________]
((((long)in.get(158 + inPos)) << 34) & 2199023255551L);
out[31 + outPos] =
// [7_______]
// [________________________________________0]
((((long)in.get(158 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________87654321_]
((((long)in.get(159 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________65432109_________]
((((long)in.get(160 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________43210987_________________]
((((long)in.get(161 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________21098765_________________________]
((((long)in.get(162 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [09876543_________________________________]
((((long)in.get(163 + inPos)) << 33) & 2199023255551L);
}
}
private static final class Packer42 extends BytePackerForLong {
private Packer42() {
super(42);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[ 0 + inPos] & 4398046511103L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[ 0 + inPos] & 4398046511103L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[ 0 + inPos] & 4398046511103L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[ 1 + inPos] & 4398046511103L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[ 1 + inPos] & 4398046511103L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[ 1 + inPos] & 4398046511103L) >>> 14)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[ 1 + inPos] & 4398046511103L) >>> 22)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[ 1 + inPos] & 4398046511103L) >>> 30)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[ 1 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[ 2 + inPos] & 4398046511103L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[ 2 + inPos] & 4398046511103L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[ 2 + inPos] & 4398046511103L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[ 2 + inPos] & 4398046511103L) >>> 20)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[ 2 + inPos] & 4398046511103L) >>> 28)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[ 2 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[ 3 + inPos] & 4398046511103L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[ 3 + inPos] & 4398046511103L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[ 3 + inPos] & 4398046511103L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[ 3 + inPos] & 4398046511103L) >>> 18)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[ 3 + inPos] & 4398046511103L) >>> 26)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[ 3 + inPos] & 4398046511103L) >>> 34)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[ 4 + inPos] & 4398046511103L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[ 4 + inPos] & 4398046511103L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[ 4 + inPos] & 4398046511103L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 24)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 32)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[ 5 + inPos] & 4398046511103L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[ 5 + inPos] & 4398046511103L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[ 5 + inPos] & 4398046511103L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[ 5 + inPos] & 4398046511103L) >>> 22)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[ 5 + inPos] & 4398046511103L) >>> 30)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[ 5 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[ 6 + inPos] & 4398046511103L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[ 6 + inPos] & 4398046511103L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[ 6 + inPos] & 4398046511103L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[ 6 + inPos] & 4398046511103L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[ 6 + inPos] & 4398046511103L) >>> 28)) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[ 6 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[ 7 + inPos] & 4398046511103L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[ 7 + inPos] & 4398046511103L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[ 7 + inPos] & 4398046511103L) >>> 10)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[ 7 + inPos] & 4398046511103L) >>> 18)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[ 7 + inPos] & 4398046511103L) >>> 26)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[ 7 + inPos] & 4398046511103L) >>> 34)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[ 0 + inPos] & 4398046511103L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[ 0 + inPos] & 4398046511103L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[ 0 + inPos] & 4398046511103L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[ 0 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[ 1 + inPos] & 4398046511103L) << 2)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[ 1 + inPos] & 4398046511103L) >>> 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[ 1 + inPos] & 4398046511103L) >>> 14)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[ 1 + inPos] & 4398046511103L) >>> 22)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[ 1 + inPos] & 4398046511103L) >>> 30)) & 255);
out[10 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[ 1 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[ 2 + inPos] & 4398046511103L) << 4)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[ 2 + inPos] & 4398046511103L) >>> 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[ 2 + inPos] & 4398046511103L) >>> 12)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[ 2 + inPos] & 4398046511103L) >>> 20)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[ 2 + inPos] & 4398046511103L) >>> 28)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[ 2 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[ 3 + inPos] & 4398046511103L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[ 3 + inPos] & 4398046511103L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[ 3 + inPos] & 4398046511103L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[ 3 + inPos] & 4398046511103L) >>> 18)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[ 3 + inPos] & 4398046511103L) >>> 26)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[ 3 + inPos] & 4398046511103L) >>> 34)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[ 4 + inPos] & 4398046511103L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[ 4 + inPos] & 4398046511103L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[ 4 + inPos] & 4398046511103L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 24)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 32)) & 255);
out[26 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[ 4 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[ 5 + inPos] & 4398046511103L) << 2)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[ 5 + inPos] & 4398046511103L) >>> 6)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[ 5 + inPos] & 4398046511103L) >>> 14)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[ 5 + inPos] & 4398046511103L) >>> 22)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[ 5 + inPos] & 4398046511103L) >>> 30)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[ 5 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[ 6 + inPos] & 4398046511103L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[ 6 + inPos] & 4398046511103L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[ 6 + inPos] & 4398046511103L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[ 6 + inPos] & 4398046511103L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[ 6 + inPos] & 4398046511103L) >>> 28)) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[ 6 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[ 7 + inPos] & 4398046511103L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[ 7 + inPos] & 4398046511103L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[ 7 + inPos] & 4398046511103L) >>> 10)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[ 7 + inPos] & 4398046511103L) >>> 18)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[ 7 + inPos] & 4398046511103L) >>> 26)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[ 7 + inPos] & 4398046511103L) >>> 34)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[ 8 + inPos] & 4398046511103L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[ 8 + inPos] & 4398046511103L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[ 8 + inPos] & 4398046511103L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[ 8 + inPos] & 4398046511103L) >>> 24)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[ 8 + inPos] & 4398046511103L) >>> 32)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[ 8 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[ 9 + inPos] & 4398046511103L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[ 9 + inPos] & 4398046511103L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[ 9 + inPos] & 4398046511103L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[ 9 + inPos] & 4398046511103L) >>> 22)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[ 9 + inPos] & 4398046511103L) >>> 30)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[ 9 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[10 + inPos] & 4398046511103L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[10 + inPos] & 4398046511103L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[10 + inPos] & 4398046511103L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[10 + inPos] & 4398046511103L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[10 + inPos] & 4398046511103L) >>> 28)) & 255);
out[57 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[10 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[11 + inPos] & 4398046511103L) << 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[11 + inPos] & 4398046511103L) >>> 2)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[11 + inPos] & 4398046511103L) >>> 10)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[11 + inPos] & 4398046511103L) >>> 18)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[11 + inPos] & 4398046511103L) >>> 26)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[11 + inPos] & 4398046511103L) >>> 34)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[12 + inPos] & 4398046511103L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[12 + inPos] & 4398046511103L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[12 + inPos] & 4398046511103L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[12 + inPos] & 4398046511103L) >>> 24)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[12 + inPos] & 4398046511103L) >>> 32)) & 255);
out[68 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[12 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[13 + inPos] & 4398046511103L) << 2)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[13 + inPos] & 4398046511103L) >>> 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[13 + inPos] & 4398046511103L) >>> 14)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[13 + inPos] & 4398046511103L) >>> 22)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[13 + inPos] & 4398046511103L) >>> 30)) & 255);
out[73 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[13 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[14 + inPos] & 4398046511103L) << 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[14 + inPos] & 4398046511103L) >>> 4)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[14 + inPos] & 4398046511103L) >>> 12)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[14 + inPos] & 4398046511103L) >>> 20)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[14 + inPos] & 4398046511103L) >>> 28)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[14 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[15 + inPos] & 4398046511103L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[15 + inPos] & 4398046511103L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[15 + inPos] & 4398046511103L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[15 + inPos] & 4398046511103L) >>> 18)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[15 + inPos] & 4398046511103L) >>> 26)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[15 + inPos] & 4398046511103L) >>> 34)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[16 + inPos] & 4398046511103L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[16 + inPos] & 4398046511103L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[16 + inPos] & 4398046511103L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[16 + inPos] & 4398046511103L) >>> 24)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[16 + inPos] & 4398046511103L) >>> 32)) & 255);
out[89 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[16 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[17 + inPos] & 4398046511103L) << 2)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[17 + inPos] & 4398046511103L) >>> 6)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[17 + inPos] & 4398046511103L) >>> 14)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[17 + inPos] & 4398046511103L) >>> 22)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[17 + inPos] & 4398046511103L) >>> 30)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[17 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[18 + inPos] & 4398046511103L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[18 + inPos] & 4398046511103L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[18 + inPos] & 4398046511103L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[18 + inPos] & 4398046511103L) >>> 20)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[18 + inPos] & 4398046511103L) >>> 28)) & 255);
out[99 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[18 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[19 + inPos] & 4398046511103L) << 6)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[19 + inPos] & 4398046511103L) >>> 2)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[19 + inPos] & 4398046511103L) >>> 10)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[19 + inPos] & 4398046511103L) >>> 18)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[19 + inPos] & 4398046511103L) >>> 26)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[19 + inPos] & 4398046511103L) >>> 34)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[20 + inPos] & 4398046511103L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[20 + inPos] & 4398046511103L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[20 + inPos] & 4398046511103L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[20 + inPos] & 4398046511103L) >>> 24)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[20 + inPos] & 4398046511103L) >>> 32)) & 255);
out[110 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[20 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[21 + inPos] & 4398046511103L) << 2)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[21 + inPos] & 4398046511103L) >>> 6)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[21 + inPos] & 4398046511103L) >>> 14)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[21 + inPos] & 4398046511103L) >>> 22)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[21 + inPos] & 4398046511103L) >>> 30)) & 255);
out[115 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[21 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[22 + inPos] & 4398046511103L) << 4)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[22 + inPos] & 4398046511103L) >>> 4)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[22 + inPos] & 4398046511103L) >>> 12)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[22 + inPos] & 4398046511103L) >>> 20)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[22 + inPos] & 4398046511103L) >>> 28)) & 255);
out[120 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[22 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[23 + inPos] & 4398046511103L) << 6)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[23 + inPos] & 4398046511103L) >>> 2)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[23 + inPos] & 4398046511103L) >>> 10)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[23 + inPos] & 4398046511103L) >>> 18)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[23 + inPos] & 4398046511103L) >>> 26)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[23 + inPos] & 4398046511103L) >>> 34)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[24 + inPos] & 4398046511103L))) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[24 + inPos] & 4398046511103L) >>> 8)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[24 + inPos] & 4398046511103L) >>> 16)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[24 + inPos] & 4398046511103L) >>> 24)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[24 + inPos] & 4398046511103L) >>> 32)) & 255);
out[131 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[24 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[25 + inPos] & 4398046511103L) << 2)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[25 + inPos] & 4398046511103L) >>> 6)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[25 + inPos] & 4398046511103L) >>> 14)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[25 + inPos] & 4398046511103L) >>> 22)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[25 + inPos] & 4398046511103L) >>> 30)) & 255);
out[136 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[25 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[26 + inPos] & 4398046511103L) << 4)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[26 + inPos] & 4398046511103L) >>> 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[26 + inPos] & 4398046511103L) >>> 12)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[26 + inPos] & 4398046511103L) >>> 20)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[26 + inPos] & 4398046511103L) >>> 28)) & 255);
out[141 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[26 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[27 + inPos] & 4398046511103L) << 6)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[27 + inPos] & 4398046511103L) >>> 2)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[27 + inPos] & 4398046511103L) >>> 10)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[27 + inPos] & 4398046511103L) >>> 18)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[27 + inPos] & 4398046511103L) >>> 26)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[27 + inPos] & 4398046511103L) >>> 34)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210]
((in[28 + inPos] & 4398046511103L))) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [__________________________54321098________]
((in[28 + inPos] & 4398046511103L) >>> 8)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [__________________32109876________________]
((in[28 + inPos] & 4398046511103L) >>> 16)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__________10987654________________________]
((in[28 + inPos] & 4398046511103L) >>> 24)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [__98765432________________________________]
((in[28 + inPos] & 4398046511103L) >>> 32)) & 255);
out[152 + outPos] = (byte)((
// [______10]
// [10________________________________________]
((in[28 + inPos] & 4398046511103L) >>> 40)
| // [765432__]
// [____________________________________543210]
((in[29 + inPos] & 4398046511103L) << 2)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [____________________________32109876______]
((in[29 + inPos] & 4398046511103L) >>> 6)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________10987654______________]
((in[29 + inPos] & 4398046511103L) >>> 14)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________98765432______________________]
((in[29 + inPos] & 4398046511103L) >>> 22)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____76543210______________________________]
((in[29 + inPos] & 4398046511103L) >>> 30)) & 255);
out[157 + outPos] = (byte)((
// [____3210]
// [1098______________________________________]
((in[29 + inPos] & 4398046511103L) >>> 38)
| // [7654____]
// [______________________________________3210]
((in[30 + inPos] & 4398046511103L) << 4)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [______________________________10987654____]
((in[30 + inPos] & 4398046511103L) >>> 4)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [______________________98765432____________]
((in[30 + inPos] & 4398046511103L) >>> 12)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [______________76543210____________________]
((in[30 + inPos] & 4398046511103L) >>> 20)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______54321098____________________________]
((in[30 + inPos] & 4398046511103L) >>> 28)) & 255);
out[162 + outPos] = (byte)((
// [__543210]
// [109876____________________________________]
((in[30 + inPos] & 4398046511103L) >>> 36)
| // [76______]
// [________________________________________10]
((in[31 + inPos] & 4398046511103L) << 6)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________________________________98765432__]
((in[31 + inPos] & 4398046511103L) >>> 2)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________76543210__________]
((in[31 + inPos] & 4398046511103L) >>> 10)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________54321098__________________]
((in[31 + inPos] & 4398046511103L) >>> 18)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________32109876__________________________]
((in[31 + inPos] & 4398046511103L) >>> 26)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [10987654__________________________________]
((in[31 + inPos] & 4398046511103L) >>> 34)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[ 5 + inPos]) << 40) & 4398046511103L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[ 7 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[ 8 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[ 9 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[10 + inPos]) << 38) & 4398046511103L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[13 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[14 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[15 + inPos]) << 36) & 4398046511103L);
out[ 3 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[18 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[19 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[20 + inPos]) << 34) & 4398046511103L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[24 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[25 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[26 + inPos]) << 40) & 4398046511103L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[30 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[31 + inPos]) << 38) & 4398046511103L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[36 + inPos]) << 36) & 4398046511103L);
out[ 7 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[38 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[39 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[40 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[41 + inPos]) << 34) & 4398046511103L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 4398046511103L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get( 7 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get( 8 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get( 9 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(10 + inPos)) << 38) & 4398046511103L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(13 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(14 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(15 + inPos)) << 36) & 4398046511103L);
out[ 3 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(18 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(19 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(20 + inPos)) << 34) & 4398046511103L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(24 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(25 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(26 + inPos)) << 40) & 4398046511103L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(30 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(31 + inPos)) << 38) & 4398046511103L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(36 + inPos)) << 36) & 4398046511103L);
out[ 7 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(38 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(39 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(40 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(41 + inPos)) << 34) & 4398046511103L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[ 5 + inPos]) << 40) & 4398046511103L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[ 5 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[ 6 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[ 7 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[ 8 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[ 9 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[10 + inPos]) << 38) & 4398046511103L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[10 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[11 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[12 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[13 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[14 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[15 + inPos]) << 36) & 4398046511103L);
out[ 3 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[18 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[19 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[20 + inPos]) << 34) & 4398046511103L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[24 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[25 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[26 + inPos]) << 40) & 4398046511103L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[26 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[27 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[28 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[29 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[30 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[31 + inPos]) << 38) & 4398046511103L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[36 + inPos]) << 36) & 4398046511103L);
out[ 7 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[38 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[39 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[40 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[41 + inPos]) << 34) & 4398046511103L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[45 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[46 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[47 + inPos]) << 40) & 4398046511103L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[50 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[51 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[52 + inPos]) << 38) & 4398046511103L);
out[10 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[56 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[57 + inPos]) << 36) & 4398046511103L);
out[11 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[57 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[58 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[59 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[60 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[61 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[62 + inPos]) << 34) & 4398046511103L);
out[12 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[66 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[67 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[68 + inPos]) << 40) & 4398046511103L);
out[13 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[68 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[69 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[70 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[71 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[72 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[73 + inPos]) << 38) & 4398046511103L);
out[14 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[73 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[74 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[75 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[76 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[77 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[78 + inPos]) << 36) & 4398046511103L);
out[15 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[81 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[82 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[83 + inPos]) << 34) & 4398046511103L);
out[16 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[87 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[88 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[89 + inPos]) << 40) & 4398046511103L);
out[17 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[89 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[90 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[91 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[92 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[93 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[94 + inPos]) << 38) & 4398046511103L);
out[18 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[97 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[98 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[99 + inPos]) << 36) & 4398046511103L);
out[19 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[99 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[100 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[101 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[102 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[103 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[104 + inPos]) << 34) & 4398046511103L);
out[20 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[108 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[109 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[110 + inPos]) << 40) & 4398046511103L);
out[21 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[110 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[111 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[112 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[113 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[114 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[115 + inPos]) << 38) & 4398046511103L);
out[22 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[115 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[116 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[117 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[118 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[119 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[120 + inPos]) << 36) & 4398046511103L);
out[23 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[120 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[121 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[122 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[123 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[124 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[125 + inPos]) << 34) & 4398046511103L);
out[24 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[126 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[127 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[128 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[129 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[130 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[131 + inPos]) << 40) & 4398046511103L);
out[25 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[131 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[132 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[133 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[134 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[135 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[136 + inPos]) << 38) & 4398046511103L);
out[26 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[136 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[137 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[138 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[139 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[140 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[141 + inPos]) << 36) & 4398046511103L);
out[27 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[141 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[142 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[143 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[144 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[145 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[146 + inPos]) << 34) & 4398046511103L);
out[28 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in[147 + inPos]) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in[148 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in[149 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in[150 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in[151 + inPos]) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in[152 + inPos]) << 40) & 4398046511103L);
out[29 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in[152 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in[153 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in[154 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in[155 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in[156 + inPos]) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in[157 + inPos]) << 38) & 4398046511103L);
out[30 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in[157 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in[158 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in[159 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in[160 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in[161 + inPos]) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in[162 + inPos]) << 36) & 4398046511103L);
out[31 + outPos] =
// [76______]
// [________________________________________10]
((((long)in[162 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in[163 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in[164 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in[165 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in[166 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in[167 + inPos]) << 34) & 4398046511103L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 4398046511103L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get( 5 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get( 6 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get( 7 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get( 8 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get( 9 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(10 + inPos)) << 38) & 4398046511103L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(10 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(11 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(12 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(13 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(14 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(15 + inPos)) << 36) & 4398046511103L);
out[ 3 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(18 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(19 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(20 + inPos)) << 34) & 4398046511103L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(24 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(25 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(26 + inPos)) << 40) & 4398046511103L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(26 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(27 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(28 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(29 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(30 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(31 + inPos)) << 38) & 4398046511103L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(36 + inPos)) << 36) & 4398046511103L);
out[ 7 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(38 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(39 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(40 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(41 + inPos)) << 34) & 4398046511103L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(45 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(46 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(47 + inPos)) << 40) & 4398046511103L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(50 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(51 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(52 + inPos)) << 38) & 4398046511103L);
out[10 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(56 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(57 + inPos)) << 36) & 4398046511103L);
out[11 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(57 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(58 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(59 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(60 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(61 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(62 + inPos)) << 34) & 4398046511103L);
out[12 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(66 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(67 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(68 + inPos)) << 40) & 4398046511103L);
out[13 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(68 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(69 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(70 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(71 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(72 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(73 + inPos)) << 38) & 4398046511103L);
out[14 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(73 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(74 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(75 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(76 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(77 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(78 + inPos)) << 36) & 4398046511103L);
out[15 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(81 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(82 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(83 + inPos)) << 34) & 4398046511103L);
out[16 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(87 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(88 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(89 + inPos)) << 40) & 4398046511103L);
out[17 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(89 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(90 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(91 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(92 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(93 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(94 + inPos)) << 38) & 4398046511103L);
out[18 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(97 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(98 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(99 + inPos)) << 36) & 4398046511103L);
out[19 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(99 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(100 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(101 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(102 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(103 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(104 + inPos)) << 34) & 4398046511103L);
out[20 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(108 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(109 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(110 + inPos)) << 40) & 4398046511103L);
out[21 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(110 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(111 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(112 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(113 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(114 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(115 + inPos)) << 38) & 4398046511103L);
out[22 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(115 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(116 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(117 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(118 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(119 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(120 + inPos)) << 36) & 4398046511103L);
out[23 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(120 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(121 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(122 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(123 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(124 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(125 + inPos)) << 34) & 4398046511103L);
out[24 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(126 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(127 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(128 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(129 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(130 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(131 + inPos)) << 40) & 4398046511103L);
out[25 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(131 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(132 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(133 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(134 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(135 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(136 + inPos)) << 38) & 4398046511103L);
out[26 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(136 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(137 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(138 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(139 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(140 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(141 + inPos)) << 36) & 4398046511103L);
out[27 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(141 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(142 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(143 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(144 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(145 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(146 + inPos)) << 34) & 4398046511103L);
out[28 + outPos] =
// [76543210]
// [__________________________________76543210]
((((long)in.get(147 + inPos)) ) & 255L)
| // [76543210]
// [__________________________54321098________]
((((long)in.get(148 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________32109876________________]
((((long)in.get(149 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________10987654________________________]
((((long)in.get(150 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__98765432________________________________]
((((long)in.get(151 + inPos)) << 32) & 1099511627775L)
| // [______10]
// [10________________________________________]
((((long)in.get(152 + inPos)) << 40) & 4398046511103L);
out[29 + outPos] =
// [765432__]
// [____________________________________543210]
((((long)in.get(152 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________32109876______]
((((long)in.get(153 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________10987654______________]
((((long)in.get(154 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________98765432______________________]
((((long)in.get(155 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____76543210______________________________]
((((long)in.get(156 + inPos)) << 30) & 274877906943L)
| // [____3210]
// [1098______________________________________]
((((long)in.get(157 + inPos)) << 38) & 4398046511103L);
out[30 + outPos] =
// [7654____]
// [______________________________________3210]
((((long)in.get(157 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________10987654____]
((((long)in.get(158 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________98765432____________]
((((long)in.get(159 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________76543210____________________]
((((long)in.get(160 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______54321098____________________________]
((((long)in.get(161 + inPos)) << 28) & 68719476735L)
| // [__543210]
// [109876____________________________________]
((((long)in.get(162 + inPos)) << 36) & 4398046511103L);
out[31 + outPos] =
// [76______]
// [________________________________________10]
((((long)in.get(162 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________98765432__]
((((long)in.get(163 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________76543210__________]
((((long)in.get(164 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________54321098__________________]
((((long)in.get(165 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________32109876__________________________]
((((long)in.get(166 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [10987654__________________________________]
((((long)in.get(167 + inPos)) << 34) & 4398046511103L);
}
}
private static final class Packer43 extends BytePackerForLong {
private Packer43() {
super(43);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210]
((in[ 0 + inPos] & 8796093022207L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________54321098________]
((in[ 0 + inPos] & 8796093022207L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________32109876________________]
((in[ 0 + inPos] & 8796093022207L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________10987654________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___98765432________________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_____210]
// [210________________________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 40)
| // [76543___]
// [______________________________________43210]
((in[ 1 + inPos] & 8796093022207L) << 3)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_____]
((in[ 1 + inPos] & 8796093022207L) >>> 5)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________09876543_____________]
((in[ 1 + inPos] & 8796093022207L) >>> 13)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________87654321_____________________]
((in[ 1 + inPos] & 8796093022207L) >>> 21)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______65432109_____________________________]
((in[ 1 + inPos] & 8796093022207L) >>> 29)) & 255);
out[10 + outPos] = (byte)((
// [__543210]
// [210987_____________________________________]
((in[ 1 + inPos] & 8796093022207L) >>> 37)
| // [76______]
// [_________________________________________10]
((in[ 2 + inPos] & 8796093022207L) << 6)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432__]
((in[ 2 + inPos] & 8796093022207L) >>> 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_________________________76543210__________]
((in[ 2 + inPos] & 8796093022207L) >>> 10)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_________________54321098__________________]
((in[ 2 + inPos] & 8796093022207L) >>> 18)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_________32109876__________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 26)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_10987654__________________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 34)) & 255);
out[16 + outPos] = (byte)((
// [_______0]
// [2__________________________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 42)
| // [7654321_]
// [____________________________________6543210]
((in[ 3 + inPos] & 8796093022207L) << 1)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_______]
((in[ 3 + inPos] & 8796093022207L) >>> 7)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________21098765_______________]
((in[ 3 + inPos] & 8796093022207L) >>> 15)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________09876543_______________________]
((in[ 3 + inPos] & 8796093022207L) >>> 23)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____87654321_______________________________]
((in[ 3 + inPos] & 8796093022207L) >>> 31)) & 255);
out[21 + outPos] = (byte)((
// [____3210]
// [2109_______________________________________]
((in[ 3 + inPos] & 8796093022207L) >>> 39)
| // [7654____]
// [_______________________________________3210]
((in[ 4 + inPos] & 8796093022207L) << 4)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654____]
((in[ 4 + inPos] & 8796093022207L) >>> 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_______________________98765432____________]
((in[ 4 + inPos] & 8796093022207L) >>> 12)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_______________76543210____________________]
((in[ 4 + inPos] & 8796093022207L) >>> 20)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_______54321098____________________________]
((in[ 4 + inPos] & 8796093022207L) >>> 28)) & 255);
out[26 + outPos] = (byte)((
// [_6543210]
// [2109876____________________________________]
((in[ 4 + inPos] & 8796093022207L) >>> 36)
| // [7_______]
// [__________________________________________0]
((in[ 5 + inPos] & 8796093022207L) << 7)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_]
((in[ 5 + inPos] & 8796093022207L) >>> 1)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_________]
((in[ 5 + inPos] & 8796093022207L) >>> 9)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________43210987_________________]
((in[ 5 + inPos] & 8796093022207L) >>> 17)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________21098765_________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 25)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__09876543_________________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 33)) & 255);
out[32 + outPos] = (byte)((
// [______10]
// [21_________________________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 41)
| // [765432__]
// [_____________________________________543210]
((in[ 6 + inPos] & 8796093022207L) << 2)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876______]
((in[ 6 + inPos] & 8796093022207L) >>> 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____________________10987654______________]
((in[ 6 + inPos] & 8796093022207L) >>> 14)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_____________98765432______________________]
((in[ 6 + inPos] & 8796093022207L) >>> 22)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_____76543210______________________________]
((in[ 6 + inPos] & 8796093022207L) >>> 30)) & 255);
out[37 + outPos] = (byte)((
// [___43210]
// [21098______________________________________]
((in[ 6 + inPos] & 8796093022207L) >>> 38)
| // [765_____]
// [________________________________________210]
((in[ 7 + inPos] & 8796093022207L) << 5)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________________09876543___]
((in[ 7 + inPos] & 8796093022207L) >>> 3)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________87654321___________]
((in[ 7 + inPos] & 8796093022207L) >>> 11)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________65432109___________________]
((in[ 7 + inPos] & 8796093022207L) >>> 19)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________43210987___________________________]
((in[ 7 + inPos] & 8796093022207L) >>> 27)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [21098765___________________________________]
((in[ 7 + inPos] & 8796093022207L) >>> 35)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210]
((in[ 0 + inPos] & 8796093022207L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________54321098________]
((in[ 0 + inPos] & 8796093022207L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________32109876________________]
((in[ 0 + inPos] & 8796093022207L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________10987654________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___98765432________________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_____210]
// [210________________________________________]
((in[ 0 + inPos] & 8796093022207L) >>> 40)
| // [76543___]
// [______________________________________43210]
((in[ 1 + inPos] & 8796093022207L) << 3)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_____]
((in[ 1 + inPos] & 8796093022207L) >>> 5)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________09876543_____________]
((in[ 1 + inPos] & 8796093022207L) >>> 13)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________87654321_____________________]
((in[ 1 + inPos] & 8796093022207L) >>> 21)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______65432109_____________________________]
((in[ 1 + inPos] & 8796093022207L) >>> 29)) & 255);
out[10 + outPos] = (byte)((
// [__543210]
// [210987_____________________________________]
((in[ 1 + inPos] & 8796093022207L) >>> 37)
| // [76______]
// [_________________________________________10]
((in[ 2 + inPos] & 8796093022207L) << 6)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432__]
((in[ 2 + inPos] & 8796093022207L) >>> 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_________________________76543210__________]
((in[ 2 + inPos] & 8796093022207L) >>> 10)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_________________54321098__________________]
((in[ 2 + inPos] & 8796093022207L) >>> 18)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_________32109876__________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 26)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_10987654__________________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 34)) & 255);
out[16 + outPos] = (byte)((
// [_______0]
// [2__________________________________________]
((in[ 2 + inPos] & 8796093022207L) >>> 42)
| // [7654321_]
// [____________________________________6543210]
((in[ 3 + inPos] & 8796093022207L) << 1)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_______]
((in[ 3 + inPos] & 8796093022207L) >>> 7)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________21098765_______________]
((in[ 3 + inPos] & 8796093022207L) >>> 15)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________09876543_______________________]
((in[ 3 + inPos] & 8796093022207L) >>> 23)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____87654321_______________________________]
((in[ 3 + inPos] & 8796093022207L) >>> 31)) & 255);
out[21 + outPos] = (byte)((
// [____3210]
// [2109_______________________________________]
((in[ 3 + inPos] & 8796093022207L) >>> 39)
| // [7654____]
// [_______________________________________3210]
((in[ 4 + inPos] & 8796093022207L) << 4)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654____]
((in[ 4 + inPos] & 8796093022207L) >>> 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_______________________98765432____________]
((in[ 4 + inPos] & 8796093022207L) >>> 12)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_______________76543210____________________]
((in[ 4 + inPos] & 8796093022207L) >>> 20)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_______54321098____________________________]
((in[ 4 + inPos] & 8796093022207L) >>> 28)) & 255);
out[26 + outPos] = (byte)((
// [_6543210]
// [2109876____________________________________]
((in[ 4 + inPos] & 8796093022207L) >>> 36)
| // [7_______]
// [__________________________________________0]
((in[ 5 + inPos] & 8796093022207L) << 7)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_]
((in[ 5 + inPos] & 8796093022207L) >>> 1)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_________]
((in[ 5 + inPos] & 8796093022207L) >>> 9)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________43210987_________________]
((in[ 5 + inPos] & 8796093022207L) >>> 17)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________21098765_________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 25)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__09876543_________________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 33)) & 255);
out[32 + outPos] = (byte)((
// [______10]
// [21_________________________________________]
((in[ 5 + inPos] & 8796093022207L) >>> 41)
| // [765432__]
// [_____________________________________543210]
((in[ 6 + inPos] & 8796093022207L) << 2)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876______]
((in[ 6 + inPos] & 8796093022207L) >>> 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____________________10987654______________]
((in[ 6 + inPos] & 8796093022207L) >>> 14)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_____________98765432______________________]
((in[ 6 + inPos] & 8796093022207L) >>> 22)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_____76543210______________________________]
((in[ 6 + inPos] & 8796093022207L) >>> 30)) & 255);
out[37 + outPos] = (byte)((
// [___43210]
// [21098______________________________________]
((in[ 6 + inPos] & 8796093022207L) >>> 38)
| // [765_____]
// [________________________________________210]
((in[ 7 + inPos] & 8796093022207L) << 5)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________________09876543___]
((in[ 7 + inPos] & 8796093022207L) >>> 3)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________87654321___________]
((in[ 7 + inPos] & 8796093022207L) >>> 11)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________65432109___________________]
((in[ 7 + inPos] & 8796093022207L) >>> 19)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________43210987___________________________]
((in[ 7 + inPos] & 8796093022207L) >>> 27)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [21098765___________________________________]
((in[ 7 + inPos] & 8796093022207L) >>> 35)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210]
((in[ 8 + inPos] & 8796093022207L))) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [___________________________54321098________]
((in[ 8 + inPos] & 8796093022207L) >>> 8)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [___________________32109876________________]
((in[ 8 + inPos] & 8796093022207L) >>> 16)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [___________10987654________________________]
((in[ 8 + inPos] & 8796093022207L) >>> 24)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [___98765432________________________________]
((in[ 8 + inPos] & 8796093022207L) >>> 32)) & 255);
out[48 + outPos] = (byte)((
// [_____210]
// [210________________________________________]
((in[ 8 + inPos] & 8796093022207L) >>> 40)
| // [76543___]
// [______________________________________43210]
((in[ 9 + inPos] & 8796093022207L) << 3)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_____]
((in[ 9 + inPos] & 8796093022207L) >>> 5)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [______________________09876543_____________]
((in[ 9 + inPos] & 8796093022207L) >>> 13)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [______________87654321_____________________]
((in[ 9 + inPos] & 8796093022207L) >>> 21)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [______65432109_____________________________]
((in[ 9 + inPos] & 8796093022207L) >>> 29)) & 255);
out[53 + outPos] = (byte)((
// [__543210]
// [210987_____________________________________]
((in[ 9 + inPos] & 8796093022207L) >>> 37)
| // [76______]
// [_________________________________________10]
((in[10 + inPos] & 8796093022207L) << 6)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432__]
((in[10 + inPos] & 8796093022207L) >>> 2)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [_________________________76543210__________]
((in[10 + inPos] & 8796093022207L) >>> 10)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [_________________54321098__________________]
((in[10 + inPos] & 8796093022207L) >>> 18)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_________32109876__________________________]
((in[10 + inPos] & 8796093022207L) >>> 26)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_10987654__________________________________]
((in[10 + inPos] & 8796093022207L) >>> 34)) & 255);
out[59 + outPos] = (byte)((
// [_______0]
// [2__________________________________________]
((in[10 + inPos] & 8796093022207L) >>> 42)
| // [7654321_]
// [____________________________________6543210]
((in[11 + inPos] & 8796093022207L) << 1)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_______]
((in[11 + inPos] & 8796093022207L) >>> 7)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____________________21098765_______________]
((in[11 + inPos] & 8796093022207L) >>> 15)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [____________09876543_______________________]
((in[11 + inPos] & 8796093022207L) >>> 23)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____87654321_______________________________]
((in[11 + inPos] & 8796093022207L) >>> 31)) & 255);
out[64 + outPos] = (byte)((
// [____3210]
// [2109_______________________________________]
((in[11 + inPos] & 8796093022207L) >>> 39)
| // [7654____]
// [_______________________________________3210]
((in[12 + inPos] & 8796093022207L) << 4)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654____]
((in[12 + inPos] & 8796093022207L) >>> 4)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_______________________98765432____________]
((in[12 + inPos] & 8796093022207L) >>> 12)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_______________76543210____________________]
((in[12 + inPos] & 8796093022207L) >>> 20)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_______54321098____________________________]
((in[12 + inPos] & 8796093022207L) >>> 28)) & 255);
out[69 + outPos] = (byte)((
// [_6543210]
// [2109876____________________________________]
((in[12 + inPos] & 8796093022207L) >>> 36)
| // [7_______]
// [__________________________________________0]
((in[13 + inPos] & 8796093022207L) << 7)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_]
((in[13 + inPos] & 8796093022207L) >>> 1)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_________]
((in[13 + inPos] & 8796093022207L) >>> 9)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________________43210987_________________]
((in[13 + inPos] & 8796093022207L) >>> 17)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__________21098765_________________________]
((in[13 + inPos] & 8796093022207L) >>> 25)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [__09876543_________________________________]
((in[13 + inPos] & 8796093022207L) >>> 33)) & 255);
out[75 + outPos] = (byte)((
// [______10]
// [21_________________________________________]
((in[13 + inPos] & 8796093022207L) >>> 41)
| // [765432__]
// [_____________________________________543210]
((in[14 + inPos] & 8796093022207L) << 2)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876______]
((in[14 + inPos] & 8796093022207L) >>> 6)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_____________________10987654______________]
((in[14 + inPos] & 8796093022207L) >>> 14)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_____________98765432______________________]
((in[14 + inPos] & 8796093022207L) >>> 22)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_____76543210______________________________]
((in[14 + inPos] & 8796093022207L) >>> 30)) & 255);
out[80 + outPos] = (byte)((
// [___43210]
// [21098______________________________________]
((in[14 + inPos] & 8796093022207L) >>> 38)
| // [765_____]
// [________________________________________210]
((in[15 + inPos] & 8796093022207L) << 5)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________________________09876543___]
((in[15 + inPos] & 8796093022207L) >>> 3)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________________________87654321___________]
((in[15 + inPos] & 8796093022207L) >>> 11)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________________65432109___________________]
((in[15 + inPos] & 8796093022207L) >>> 19)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________43210987___________________________]
((in[15 + inPos] & 8796093022207L) >>> 27)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [21098765___________________________________]
((in[15 + inPos] & 8796093022207L) >>> 35)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210]
((in[16 + inPos] & 8796093022207L))) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [___________________________54321098________]
((in[16 + inPos] & 8796093022207L) >>> 8)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [___________________32109876________________]
((in[16 + inPos] & 8796093022207L) >>> 16)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [___________10987654________________________]
((in[16 + inPos] & 8796093022207L) >>> 24)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [___98765432________________________________]
((in[16 + inPos] & 8796093022207L) >>> 32)) & 255);
out[91 + outPos] = (byte)((
// [_____210]
// [210________________________________________]
((in[16 + inPos] & 8796093022207L) >>> 40)
| // [76543___]
// [______________________________________43210]
((in[17 + inPos] & 8796093022207L) << 3)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_____]
((in[17 + inPos] & 8796093022207L) >>> 5)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [______________________09876543_____________]
((in[17 + inPos] & 8796093022207L) >>> 13)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [______________87654321_____________________]
((in[17 + inPos] & 8796093022207L) >>> 21)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______65432109_____________________________]
((in[17 + inPos] & 8796093022207L) >>> 29)) & 255);
out[96 + outPos] = (byte)((
// [__543210]
// [210987_____________________________________]
((in[17 + inPos] & 8796093022207L) >>> 37)
| // [76______]
// [_________________________________________10]
((in[18 + inPos] & 8796093022207L) << 6)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432__]
((in[18 + inPos] & 8796093022207L) >>> 2)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_________________________76543210__________]
((in[18 + inPos] & 8796093022207L) >>> 10)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [_________________54321098__________________]
((in[18 + inPos] & 8796093022207L) >>> 18)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [_________32109876__________________________]
((in[18 + inPos] & 8796093022207L) >>> 26)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_10987654__________________________________]
((in[18 + inPos] & 8796093022207L) >>> 34)) & 255);
out[102 + outPos] = (byte)((
// [_______0]
// [2__________________________________________]
((in[18 + inPos] & 8796093022207L) >>> 42)
| // [7654321_]
// [____________________________________6543210]
((in[19 + inPos] & 8796093022207L) << 1)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_______]
((in[19 + inPos] & 8796093022207L) >>> 7)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [____________________21098765_______________]
((in[19 + inPos] & 8796093022207L) >>> 15)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________09876543_______________________]
((in[19 + inPos] & 8796093022207L) >>> 23)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____87654321_______________________________]
((in[19 + inPos] & 8796093022207L) >>> 31)) & 255);
out[107 + outPos] = (byte)((
// [____3210]
// [2109_______________________________________]
((in[19 + inPos] & 8796093022207L) >>> 39)
| // [7654____]
// [_______________________________________3210]
((in[20 + inPos] & 8796093022207L) << 4)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654____]
((in[20 + inPos] & 8796093022207L) >>> 4)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [_______________________98765432____________]
((in[20 + inPos] & 8796093022207L) >>> 12)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [_______________76543210____________________]
((in[20 + inPos] & 8796093022207L) >>> 20)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_______54321098____________________________]
((in[20 + inPos] & 8796093022207L) >>> 28)) & 255);
out[112 + outPos] = (byte)((
// [_6543210]
// [2109876____________________________________]
((in[20 + inPos] & 8796093022207L) >>> 36)
| // [7_______]
// [__________________________________________0]
((in[21 + inPos] & 8796093022207L) << 7)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_]
((in[21 + inPos] & 8796093022207L) >>> 1)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_________]
((in[21 + inPos] & 8796093022207L) >>> 9)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [__________________43210987_________________]
((in[21 + inPos] & 8796093022207L) >>> 17)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [__________21098765_________________________]
((in[21 + inPos] & 8796093022207L) >>> 25)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [__09876543_________________________________]
((in[21 + inPos] & 8796093022207L) >>> 33)) & 255);
out[118 + outPos] = (byte)((
// [______10]
// [21_________________________________________]
((in[21 + inPos] & 8796093022207L) >>> 41)
| // [765432__]
// [_____________________________________543210]
((in[22 + inPos] & 8796093022207L) << 2)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876______]
((in[22 + inPos] & 8796093022207L) >>> 6)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [_____________________10987654______________]
((in[22 + inPos] & 8796093022207L) >>> 14)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [_____________98765432______________________]
((in[22 + inPos] & 8796093022207L) >>> 22)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [_____76543210______________________________]
((in[22 + inPos] & 8796093022207L) >>> 30)) & 255);
out[123 + outPos] = (byte)((
// [___43210]
// [21098______________________________________]
((in[22 + inPos] & 8796093022207L) >>> 38)
| // [765_____]
// [________________________________________210]
((in[23 + inPos] & 8796093022207L) << 5)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________________________________09876543___]
((in[23 + inPos] & 8796093022207L) >>> 3)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [________________________87654321___________]
((in[23 + inPos] & 8796093022207L) >>> 11)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________________65432109___________________]
((in[23 + inPos] & 8796093022207L) >>> 19)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________43210987___________________________]
((in[23 + inPos] & 8796093022207L) >>> 27)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [21098765___________________________________]
((in[23 + inPos] & 8796093022207L) >>> 35)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210]
((in[24 + inPos] & 8796093022207L))) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [___________________________54321098________]
((in[24 + inPos] & 8796093022207L) >>> 8)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [___________________32109876________________]
((in[24 + inPos] & 8796093022207L) >>> 16)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [___________10987654________________________]
((in[24 + inPos] & 8796093022207L) >>> 24)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [___98765432________________________________]
((in[24 + inPos] & 8796093022207L) >>> 32)) & 255);
out[134 + outPos] = (byte)((
// [_____210]
// [210________________________________________]
((in[24 + inPos] & 8796093022207L) >>> 40)
| // [76543___]
// [______________________________________43210]
((in[25 + inPos] & 8796093022207L) << 3)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_____]
((in[25 + inPos] & 8796093022207L) >>> 5)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______________________09876543_____________]
((in[25 + inPos] & 8796093022207L) >>> 13)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [______________87654321_____________________]
((in[25 + inPos] & 8796093022207L) >>> 21)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______65432109_____________________________]
((in[25 + inPos] & 8796093022207L) >>> 29)) & 255);
out[139 + outPos] = (byte)((
// [__543210]
// [210987_____________________________________]
((in[25 + inPos] & 8796093022207L) >>> 37)
| // [76______]
// [_________________________________________10]
((in[26 + inPos] & 8796093022207L) << 6)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432__]
((in[26 + inPos] & 8796093022207L) >>> 2)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [_________________________76543210__________]
((in[26 + inPos] & 8796093022207L) >>> 10)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [_________________54321098__________________]
((in[26 + inPos] & 8796093022207L) >>> 18)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_________32109876__________________________]
((in[26 + inPos] & 8796093022207L) >>> 26)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_10987654__________________________________]
((in[26 + inPos] & 8796093022207L) >>> 34)) & 255);
out[145 + outPos] = (byte)((
// [_______0]
// [2__________________________________________]
((in[26 + inPos] & 8796093022207L) >>> 42)
| // [7654321_]
// [____________________________________6543210]
((in[27 + inPos] & 8796093022207L) << 1)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_______]
((in[27 + inPos] & 8796093022207L) >>> 7)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____________________21098765_______________]
((in[27 + inPos] & 8796093022207L) >>> 15)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [____________09876543_______________________]
((in[27 + inPos] & 8796093022207L) >>> 23)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [____87654321_______________________________]
((in[27 + inPos] & 8796093022207L) >>> 31)) & 255);
out[150 + outPos] = (byte)((
// [____3210]
// [2109_______________________________________]
((in[27 + inPos] & 8796093022207L) >>> 39)
| // [7654____]
// [_______________________________________3210]
((in[28 + inPos] & 8796093022207L) << 4)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654____]
((in[28 + inPos] & 8796093022207L) >>> 4)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [_______________________98765432____________]
((in[28 + inPos] & 8796093022207L) >>> 12)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [_______________76543210____________________]
((in[28 + inPos] & 8796093022207L) >>> 20)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [_______54321098____________________________]
((in[28 + inPos] & 8796093022207L) >>> 28)) & 255);
out[155 + outPos] = (byte)((
// [_6543210]
// [2109876____________________________________]
((in[28 + inPos] & 8796093022207L) >>> 36)
| // [7_______]
// [__________________________________________0]
((in[29 + inPos] & 8796093022207L) << 7)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_]
((in[29 + inPos] & 8796093022207L) >>> 1)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_________]
((in[29 + inPos] & 8796093022207L) >>> 9)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [__________________43210987_________________]
((in[29 + inPos] & 8796093022207L) >>> 17)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [__________21098765_________________________]
((in[29 + inPos] & 8796093022207L) >>> 25)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [__09876543_________________________________]
((in[29 + inPos] & 8796093022207L) >>> 33)) & 255);
out[161 + outPos] = (byte)((
// [______10]
// [21_________________________________________]
((in[29 + inPos] & 8796093022207L) >>> 41)
| // [765432__]
// [_____________________________________543210]
((in[30 + inPos] & 8796093022207L) << 2)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876______]
((in[30 + inPos] & 8796093022207L) >>> 6)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [_____________________10987654______________]
((in[30 + inPos] & 8796093022207L) >>> 14)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [_____________98765432______________________]
((in[30 + inPos] & 8796093022207L) >>> 22)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [_____76543210______________________________]
((in[30 + inPos] & 8796093022207L) >>> 30)) & 255);
out[166 + outPos] = (byte)((
// [___43210]
// [21098______________________________________]
((in[30 + inPos] & 8796093022207L) >>> 38)
| // [765_____]
// [________________________________________210]
((in[31 + inPos] & 8796093022207L) << 5)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [________________________________09876543___]
((in[31 + inPos] & 8796093022207L) >>> 3)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________________87654321___________]
((in[31 + inPos] & 8796093022207L) >>> 11)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________65432109___________________]
((in[31 + inPos] & 8796093022207L) >>> 19)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________43210987___________________________]
((in[31 + inPos] & 8796093022207L) >>> 27)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [21098765___________________________________]
((in[31 + inPos] & 8796093022207L) >>> 35)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 8796093022207L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in[ 5 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in[ 6 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in[ 7 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in[ 8 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in[ 9 + inPos]) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in[10 + inPos]) << 37) & 8796093022207L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in[10 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in[11 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in[12 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in[13 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in[14 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in[15 + inPos]) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in[16 + inPos]) << 42) & 8796093022207L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in[16 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in[17 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in[18 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in[19 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in[20 + inPos]) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in[21 + inPos]) << 39) & 8796093022207L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in[21 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in[22 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in[23 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in[24 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in[25 + inPos]) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in[26 + inPos]) << 36) & 8796093022207L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in[26 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in[27 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in[28 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in[29 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in[30 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in[31 + inPos]) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in[32 + inPos]) << 41) & 8796093022207L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in[32 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in[33 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in[34 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in[35 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in[36 + inPos]) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in[37 + inPos]) << 38) & 8796093022207L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in[37 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in[38 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in[39 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in[40 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in[41 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in[42 + inPos]) << 35) & 8796093022207L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 8796093022207L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in.get( 5 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in.get( 6 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in.get( 7 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in.get( 8 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in.get( 9 + inPos)) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in.get(10 + inPos)) << 37) & 8796093022207L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in.get(10 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in.get(11 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in.get(12 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in.get(13 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in.get(14 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in.get(15 + inPos)) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in.get(16 + inPos)) << 42) & 8796093022207L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in.get(16 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in.get(17 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in.get(18 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in.get(19 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in.get(20 + inPos)) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in.get(21 + inPos)) << 39) & 8796093022207L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in.get(21 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in.get(22 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in.get(23 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in.get(24 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in.get(25 + inPos)) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in.get(26 + inPos)) << 36) & 8796093022207L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in.get(26 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in.get(27 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in.get(28 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in.get(29 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in.get(30 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in.get(31 + inPos)) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in.get(32 + inPos)) << 41) & 8796093022207L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in.get(32 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in.get(33 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in.get(34 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in.get(35 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in.get(36 + inPos)) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in.get(37 + inPos)) << 38) & 8796093022207L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in.get(37 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in.get(38 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in.get(39 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in.get(40 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in.get(41 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in.get(42 + inPos)) << 35) & 8796093022207L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 8796093022207L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in[ 5 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in[ 6 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in[ 7 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in[ 8 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in[ 9 + inPos]) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in[10 + inPos]) << 37) & 8796093022207L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in[10 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in[11 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in[12 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in[13 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in[14 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in[15 + inPos]) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in[16 + inPos]) << 42) & 8796093022207L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in[16 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in[17 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in[18 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in[19 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in[20 + inPos]) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in[21 + inPos]) << 39) & 8796093022207L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in[21 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in[22 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in[23 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in[24 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in[25 + inPos]) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in[26 + inPos]) << 36) & 8796093022207L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in[26 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in[27 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in[28 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in[29 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in[30 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in[31 + inPos]) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in[32 + inPos]) << 41) & 8796093022207L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in[32 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in[33 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in[34 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in[35 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in[36 + inPos]) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in[37 + inPos]) << 38) & 8796093022207L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in[37 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in[38 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in[39 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in[40 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in[41 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in[42 + inPos]) << 35) & 8796093022207L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in[43 + inPos]) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in[44 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in[45 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in[46 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in[47 + inPos]) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in[48 + inPos]) << 40) & 8796093022207L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in[48 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in[49 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in[50 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in[51 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in[52 + inPos]) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in[53 + inPos]) << 37) & 8796093022207L);
out[10 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in[53 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in[54 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in[55 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in[56 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in[57 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in[58 + inPos]) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in[59 + inPos]) << 42) & 8796093022207L);
out[11 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in[59 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in[60 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in[61 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in[62 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in[63 + inPos]) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in[64 + inPos]) << 39) & 8796093022207L);
out[12 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in[64 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in[65 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in[66 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in[67 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in[68 + inPos]) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in[69 + inPos]) << 36) & 8796093022207L);
out[13 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in[69 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in[70 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in[71 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in[72 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in[73 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in[74 + inPos]) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in[75 + inPos]) << 41) & 8796093022207L);
out[14 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in[75 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in[76 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in[77 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in[78 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in[79 + inPos]) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in[80 + inPos]) << 38) & 8796093022207L);
out[15 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in[80 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in[81 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in[82 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in[83 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in[84 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in[85 + inPos]) << 35) & 8796093022207L);
out[16 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in[86 + inPos]) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in[87 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in[88 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in[89 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in[90 + inPos]) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in[91 + inPos]) << 40) & 8796093022207L);
out[17 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in[91 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in[92 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in[93 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in[94 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in[95 + inPos]) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in[96 + inPos]) << 37) & 8796093022207L);
out[18 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in[96 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in[97 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in[98 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in[99 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in[100 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in[101 + inPos]) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in[102 + inPos]) << 42) & 8796093022207L);
out[19 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in[102 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in[103 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in[104 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in[105 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in[106 + inPos]) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in[107 + inPos]) << 39) & 8796093022207L);
out[20 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in[107 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in[108 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in[109 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in[110 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in[111 + inPos]) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in[112 + inPos]) << 36) & 8796093022207L);
out[21 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in[112 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in[113 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in[114 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in[115 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in[116 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in[117 + inPos]) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in[118 + inPos]) << 41) & 8796093022207L);
out[22 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in[118 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in[119 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in[120 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in[121 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in[122 + inPos]) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in[123 + inPos]) << 38) & 8796093022207L);
out[23 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in[123 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in[124 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in[125 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in[126 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in[127 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in[128 + inPos]) << 35) & 8796093022207L);
out[24 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in[129 + inPos]) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in[130 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in[131 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in[132 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in[133 + inPos]) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in[134 + inPos]) << 40) & 8796093022207L);
out[25 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in[134 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in[135 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in[136 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in[137 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in[138 + inPos]) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in[139 + inPos]) << 37) & 8796093022207L);
out[26 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in[139 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in[140 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in[141 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in[142 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in[143 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in[144 + inPos]) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in[145 + inPos]) << 42) & 8796093022207L);
out[27 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in[145 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in[146 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in[147 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in[148 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in[149 + inPos]) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in[150 + inPos]) << 39) & 8796093022207L);
out[28 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in[150 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in[151 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in[152 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in[153 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in[154 + inPos]) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in[155 + inPos]) << 36) & 8796093022207L);
out[29 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in[155 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in[156 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in[157 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in[158 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in[159 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in[160 + inPos]) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in[161 + inPos]) << 41) & 8796093022207L);
out[30 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in[161 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in[162 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in[163 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in[164 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in[165 + inPos]) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in[166 + inPos]) << 38) & 8796093022207L);
out[31 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in[166 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in[167 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in[168 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in[169 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in[170 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in[171 + inPos]) << 35) & 8796093022207L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 8796093022207L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in.get( 5 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in.get( 6 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in.get( 7 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in.get( 8 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in.get( 9 + inPos)) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in.get(10 + inPos)) << 37) & 8796093022207L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in.get(10 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in.get(11 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in.get(12 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in.get(13 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in.get(14 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in.get(15 + inPos)) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in.get(16 + inPos)) << 42) & 8796093022207L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in.get(16 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in.get(17 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in.get(18 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in.get(19 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in.get(20 + inPos)) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in.get(21 + inPos)) << 39) & 8796093022207L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in.get(21 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in.get(22 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in.get(23 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in.get(24 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in.get(25 + inPos)) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in.get(26 + inPos)) << 36) & 8796093022207L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in.get(26 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in.get(27 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in.get(28 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in.get(29 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in.get(30 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in.get(31 + inPos)) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in.get(32 + inPos)) << 41) & 8796093022207L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in.get(32 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in.get(33 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in.get(34 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in.get(35 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in.get(36 + inPos)) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in.get(37 + inPos)) << 38) & 8796093022207L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in.get(37 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in.get(38 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in.get(39 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in.get(40 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in.get(41 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in.get(42 + inPos)) << 35) & 8796093022207L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in.get(43 + inPos)) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in.get(44 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in.get(45 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in.get(46 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in.get(47 + inPos)) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in.get(48 + inPos)) << 40) & 8796093022207L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in.get(48 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in.get(49 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in.get(50 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in.get(51 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in.get(52 + inPos)) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in.get(53 + inPos)) << 37) & 8796093022207L);
out[10 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in.get(53 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in.get(54 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in.get(55 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in.get(56 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in.get(57 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in.get(58 + inPos)) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in.get(59 + inPos)) << 42) & 8796093022207L);
out[11 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in.get(59 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in.get(60 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in.get(61 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in.get(62 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in.get(63 + inPos)) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in.get(64 + inPos)) << 39) & 8796093022207L);
out[12 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in.get(64 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in.get(65 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in.get(66 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in.get(67 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in.get(68 + inPos)) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in.get(69 + inPos)) << 36) & 8796093022207L);
out[13 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in.get(69 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in.get(70 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in.get(71 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in.get(72 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in.get(73 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in.get(74 + inPos)) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in.get(75 + inPos)) << 41) & 8796093022207L);
out[14 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in.get(75 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in.get(76 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in.get(77 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in.get(78 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in.get(79 + inPos)) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in.get(80 + inPos)) << 38) & 8796093022207L);
out[15 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in.get(80 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in.get(81 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in.get(82 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in.get(83 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in.get(84 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in.get(85 + inPos)) << 35) & 8796093022207L);
out[16 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in.get(86 + inPos)) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in.get(87 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in.get(88 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in.get(89 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in.get(90 + inPos)) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in.get(91 + inPos)) << 40) & 8796093022207L);
out[17 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in.get(91 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in.get(92 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in.get(93 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in.get(94 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in.get(95 + inPos)) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in.get(96 + inPos)) << 37) & 8796093022207L);
out[18 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in.get(96 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in.get(97 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in.get(98 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in.get(99 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in.get(100 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in.get(101 + inPos)) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in.get(102 + inPos)) << 42) & 8796093022207L);
out[19 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in.get(102 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in.get(103 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in.get(104 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in.get(105 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in.get(106 + inPos)) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in.get(107 + inPos)) << 39) & 8796093022207L);
out[20 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in.get(107 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in.get(108 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in.get(109 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in.get(110 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in.get(111 + inPos)) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in.get(112 + inPos)) << 36) & 8796093022207L);
out[21 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in.get(112 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in.get(113 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in.get(114 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in.get(115 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in.get(116 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in.get(117 + inPos)) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in.get(118 + inPos)) << 41) & 8796093022207L);
out[22 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in.get(118 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in.get(119 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in.get(120 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in.get(121 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in.get(122 + inPos)) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in.get(123 + inPos)) << 38) & 8796093022207L);
out[23 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in.get(123 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in.get(124 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in.get(125 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in.get(126 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in.get(127 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in.get(128 + inPos)) << 35) & 8796093022207L);
out[24 + outPos] =
// [76543210]
// [___________________________________76543210]
((((long)in.get(129 + inPos)) ) & 255L)
| // [76543210]
// [___________________________54321098________]
((((long)in.get(130 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________32109876________________]
((((long)in.get(131 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________10987654________________________]
((((long)in.get(132 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___98765432________________________________]
((((long)in.get(133 + inPos)) << 32) & 1099511627775L)
| // [_____210]
// [210________________________________________]
((((long)in.get(134 + inPos)) << 40) & 8796093022207L);
out[25 + outPos] =
// [76543___]
// [______________________________________43210]
((((long)in.get(134 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________21098765_____]
((((long)in.get(135 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________09876543_____________]
((((long)in.get(136 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________87654321_____________________]
((((long)in.get(137 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______65432109_____________________________]
((((long)in.get(138 + inPos)) << 29) & 137438953471L)
| // [__543210]
// [210987_____________________________________]
((((long)in.get(139 + inPos)) << 37) & 8796093022207L);
out[26 + outPos] =
// [76______]
// [_________________________________________10]
((((long)in.get(139 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________98765432__]
((((long)in.get(140 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________76543210__________]
((((long)in.get(141 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________54321098__________________]
((((long)in.get(142 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________32109876__________________________]
((((long)in.get(143 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_10987654__________________________________]
((((long)in.get(144 + inPos)) << 34) & 4398046511103L)
| // [_______0]
// [2__________________________________________]
((((long)in.get(145 + inPos)) << 42) & 8796093022207L);
out[27 + outPos] =
// [7654321_]
// [____________________________________6543210]
((((long)in.get(145 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________43210987_______]
((((long)in.get(146 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________21098765_______________]
((((long)in.get(147 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________09876543_______________________]
((((long)in.get(148 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____87654321_______________________________]
((((long)in.get(149 + inPos)) << 31) & 549755813887L)
| // [____3210]
// [2109_______________________________________]
((((long)in.get(150 + inPos)) << 39) & 8796093022207L);
out[28 + outPos] =
// [7654____]
// [_______________________________________3210]
((((long)in.get(150 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________10987654____]
((((long)in.get(151 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________98765432____________]
((((long)in.get(152 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________76543210____________________]
((((long)in.get(153 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______54321098____________________________]
((((long)in.get(154 + inPos)) << 28) & 68719476735L)
| // [_6543210]
// [2109876____________________________________]
((((long)in.get(155 + inPos)) << 36) & 8796093022207L);
out[29 + outPos] =
// [7_______]
// [__________________________________________0]
((((long)in.get(155 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________87654321_]
((((long)in.get(156 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________65432109_________]
((((long)in.get(157 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________43210987_________________]
((((long)in.get(158 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________21098765_________________________]
((((long)in.get(159 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__09876543_________________________________]
((((long)in.get(160 + inPos)) << 33) & 2199023255551L)
| // [______10]
// [21_________________________________________]
((((long)in.get(161 + inPos)) << 41) & 8796093022207L);
out[30 + outPos] =
// [765432__]
// [_____________________________________543210]
((((long)in.get(161 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________32109876______]
((((long)in.get(162 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________10987654______________]
((((long)in.get(163 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________98765432______________________]
((((long)in.get(164 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____76543210______________________________]
((((long)in.get(165 + inPos)) << 30) & 274877906943L)
| // [___43210]
// [21098______________________________________]
((((long)in.get(166 + inPos)) << 38) & 8796093022207L);
out[31 + outPos] =
// [765_____]
// [________________________________________210]
((((long)in.get(166 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________09876543___]
((((long)in.get(167 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________87654321___________]
((((long)in.get(168 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________65432109___________________]
((((long)in.get(169 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________43210987___________________________]
((((long)in.get(170 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [21098765___________________________________]
((((long)in.get(171 + inPos)) << 35) & 8796093022207L);
}
}
private static final class Packer44 extends BytePackerForLong {
private Packer44() {
super(44);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 0 + inPos] & 17592186044415L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 0 + inPos] & 17592186044415L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 0 + inPos] & 17592186044415L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 1 + inPos] & 17592186044415L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 1 + inPos] & 17592186044415L) >>> 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 1 + inPos] & 17592186044415L) >>> 12)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 1 + inPos] & 17592186044415L) >>> 20)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 1 + inPos] & 17592186044415L) >>> 28)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 1 + inPos] & 17592186044415L) >>> 36)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 2 + inPos] & 17592186044415L))) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 2 + inPos] & 17592186044415L) >>> 8)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 2 + inPos] & 17592186044415L) >>> 16)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 24)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 32)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 3 + inPos] & 17592186044415L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 3 + inPos] & 17592186044415L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 3 + inPos] & 17592186044415L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 3 + inPos] & 17592186044415L) >>> 20)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 3 + inPos] & 17592186044415L) >>> 28)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 3 + inPos] & 17592186044415L) >>> 36)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 4 + inPos] & 17592186044415L))) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 4 + inPos] & 17592186044415L) >>> 8)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 4 + inPos] & 17592186044415L) >>> 16)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 24)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 32)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 5 + inPos] & 17592186044415L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 5 + inPos] & 17592186044415L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 5 + inPos] & 17592186044415L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 5 + inPos] & 17592186044415L) >>> 20)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 5 + inPos] & 17592186044415L) >>> 28)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 5 + inPos] & 17592186044415L) >>> 36)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 6 + inPos] & 17592186044415L))) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 6 + inPos] & 17592186044415L) >>> 8)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 6 + inPos] & 17592186044415L) >>> 16)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 24)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 32)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 7 + inPos] & 17592186044415L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 7 + inPos] & 17592186044415L) >>> 4)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 7 + inPos] & 17592186044415L) >>> 12)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 7 + inPos] & 17592186044415L) >>> 20)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 7 + inPos] & 17592186044415L) >>> 28)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 7 + inPos] & 17592186044415L) >>> 36)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 0 + inPos] & 17592186044415L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 0 + inPos] & 17592186044415L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 0 + inPos] & 17592186044415L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 0 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 1 + inPos] & 17592186044415L) << 4)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 1 + inPos] & 17592186044415L) >>> 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 1 + inPos] & 17592186044415L) >>> 12)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 1 + inPos] & 17592186044415L) >>> 20)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 1 + inPos] & 17592186044415L) >>> 28)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 1 + inPos] & 17592186044415L) >>> 36)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 2 + inPos] & 17592186044415L))) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 2 + inPos] & 17592186044415L) >>> 8)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 2 + inPos] & 17592186044415L) >>> 16)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 24)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 32)) & 255);
out[16 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 2 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 3 + inPos] & 17592186044415L) << 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 3 + inPos] & 17592186044415L) >>> 4)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 3 + inPos] & 17592186044415L) >>> 12)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 3 + inPos] & 17592186044415L) >>> 20)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 3 + inPos] & 17592186044415L) >>> 28)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 3 + inPos] & 17592186044415L) >>> 36)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 4 + inPos] & 17592186044415L))) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 4 + inPos] & 17592186044415L) >>> 8)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 4 + inPos] & 17592186044415L) >>> 16)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 24)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 32)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 4 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 5 + inPos] & 17592186044415L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 5 + inPos] & 17592186044415L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 5 + inPos] & 17592186044415L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 5 + inPos] & 17592186044415L) >>> 20)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 5 + inPos] & 17592186044415L) >>> 28)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 5 + inPos] & 17592186044415L) >>> 36)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 6 + inPos] & 17592186044415L))) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 6 + inPos] & 17592186044415L) >>> 8)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 6 + inPos] & 17592186044415L) >>> 16)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 24)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 32)) & 255);
out[38 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 6 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 7 + inPos] & 17592186044415L) << 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 7 + inPos] & 17592186044415L) >>> 4)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 7 + inPos] & 17592186044415L) >>> 12)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 7 + inPos] & 17592186044415L) >>> 20)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 7 + inPos] & 17592186044415L) >>> 28)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 7 + inPos] & 17592186044415L) >>> 36)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[ 8 + inPos] & 17592186044415L))) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[ 8 + inPos] & 17592186044415L) >>> 8)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[ 8 + inPos] & 17592186044415L) >>> 16)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[ 8 + inPos] & 17592186044415L) >>> 24)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[ 8 + inPos] & 17592186044415L) >>> 32)) & 255);
out[49 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[ 8 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[ 9 + inPos] & 17592186044415L) << 4)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[ 9 + inPos] & 17592186044415L) >>> 4)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[ 9 + inPos] & 17592186044415L) >>> 12)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[ 9 + inPos] & 17592186044415L) >>> 20)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[ 9 + inPos] & 17592186044415L) >>> 28)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[ 9 + inPos] & 17592186044415L) >>> 36)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[10 + inPos] & 17592186044415L))) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[10 + inPos] & 17592186044415L) >>> 8)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[10 + inPos] & 17592186044415L) >>> 16)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[10 + inPos] & 17592186044415L) >>> 24)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[10 + inPos] & 17592186044415L) >>> 32)) & 255);
out[60 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[10 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[11 + inPos] & 17592186044415L) << 4)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[11 + inPos] & 17592186044415L) >>> 4)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[11 + inPos] & 17592186044415L) >>> 12)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[11 + inPos] & 17592186044415L) >>> 20)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[11 + inPos] & 17592186044415L) >>> 28)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[11 + inPos] & 17592186044415L) >>> 36)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[12 + inPos] & 17592186044415L))) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[12 + inPos] & 17592186044415L) >>> 8)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[12 + inPos] & 17592186044415L) >>> 16)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[12 + inPos] & 17592186044415L) >>> 24)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[12 + inPos] & 17592186044415L) >>> 32)) & 255);
out[71 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[12 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[13 + inPos] & 17592186044415L) << 4)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[13 + inPos] & 17592186044415L) >>> 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[13 + inPos] & 17592186044415L) >>> 12)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[13 + inPos] & 17592186044415L) >>> 20)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[13 + inPos] & 17592186044415L) >>> 28)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[13 + inPos] & 17592186044415L) >>> 36)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[14 + inPos] & 17592186044415L))) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[14 + inPos] & 17592186044415L) >>> 8)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[14 + inPos] & 17592186044415L) >>> 16)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[14 + inPos] & 17592186044415L) >>> 24)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[14 + inPos] & 17592186044415L) >>> 32)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[14 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[15 + inPos] & 17592186044415L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[15 + inPos] & 17592186044415L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[15 + inPos] & 17592186044415L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[15 + inPos] & 17592186044415L) >>> 20)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[15 + inPos] & 17592186044415L) >>> 28)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[15 + inPos] & 17592186044415L) >>> 36)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[16 + inPos] & 17592186044415L))) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[16 + inPos] & 17592186044415L) >>> 8)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[16 + inPos] & 17592186044415L) >>> 16)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[16 + inPos] & 17592186044415L) >>> 24)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[16 + inPos] & 17592186044415L) >>> 32)) & 255);
out[93 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[16 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[17 + inPos] & 17592186044415L) << 4)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[17 + inPos] & 17592186044415L) >>> 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[17 + inPos] & 17592186044415L) >>> 12)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[17 + inPos] & 17592186044415L) >>> 20)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[17 + inPos] & 17592186044415L) >>> 28)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[17 + inPos] & 17592186044415L) >>> 36)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[18 + inPos] & 17592186044415L))) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[18 + inPos] & 17592186044415L) >>> 8)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[18 + inPos] & 17592186044415L) >>> 16)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[18 + inPos] & 17592186044415L) >>> 24)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[18 + inPos] & 17592186044415L) >>> 32)) & 255);
out[104 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[18 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[19 + inPos] & 17592186044415L) << 4)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[19 + inPos] & 17592186044415L) >>> 4)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[19 + inPos] & 17592186044415L) >>> 12)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[19 + inPos] & 17592186044415L) >>> 20)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[19 + inPos] & 17592186044415L) >>> 28)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[19 + inPos] & 17592186044415L) >>> 36)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[20 + inPos] & 17592186044415L))) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[20 + inPos] & 17592186044415L) >>> 8)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[20 + inPos] & 17592186044415L) >>> 16)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[20 + inPos] & 17592186044415L) >>> 24)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[20 + inPos] & 17592186044415L) >>> 32)) & 255);
out[115 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[20 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[21 + inPos] & 17592186044415L) << 4)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[21 + inPos] & 17592186044415L) >>> 4)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[21 + inPos] & 17592186044415L) >>> 12)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[21 + inPos] & 17592186044415L) >>> 20)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[21 + inPos] & 17592186044415L) >>> 28)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[21 + inPos] & 17592186044415L) >>> 36)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[22 + inPos] & 17592186044415L))) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[22 + inPos] & 17592186044415L) >>> 8)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[22 + inPos] & 17592186044415L) >>> 16)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[22 + inPos] & 17592186044415L) >>> 24)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[22 + inPos] & 17592186044415L) >>> 32)) & 255);
out[126 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[22 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[23 + inPos] & 17592186044415L) << 4)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[23 + inPos] & 17592186044415L) >>> 4)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[23 + inPos] & 17592186044415L) >>> 12)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[23 + inPos] & 17592186044415L) >>> 20)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[23 + inPos] & 17592186044415L) >>> 28)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[23 + inPos] & 17592186044415L) >>> 36)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[24 + inPos] & 17592186044415L))) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[24 + inPos] & 17592186044415L) >>> 8)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[24 + inPos] & 17592186044415L) >>> 16)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[24 + inPos] & 17592186044415L) >>> 24)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[24 + inPos] & 17592186044415L) >>> 32)) & 255);
out[137 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[24 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[25 + inPos] & 17592186044415L) << 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[25 + inPos] & 17592186044415L) >>> 4)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[25 + inPos] & 17592186044415L) >>> 12)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[25 + inPos] & 17592186044415L) >>> 20)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[25 + inPos] & 17592186044415L) >>> 28)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[25 + inPos] & 17592186044415L) >>> 36)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[26 + inPos] & 17592186044415L))) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[26 + inPos] & 17592186044415L) >>> 8)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[26 + inPos] & 17592186044415L) >>> 16)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[26 + inPos] & 17592186044415L) >>> 24)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[26 + inPos] & 17592186044415L) >>> 32)) & 255);
out[148 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[26 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[27 + inPos] & 17592186044415L) << 4)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[27 + inPos] & 17592186044415L) >>> 4)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[27 + inPos] & 17592186044415L) >>> 12)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[27 + inPos] & 17592186044415L) >>> 20)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[27 + inPos] & 17592186044415L) >>> 28)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[27 + inPos] & 17592186044415L) >>> 36)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[28 + inPos] & 17592186044415L))) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[28 + inPos] & 17592186044415L) >>> 8)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[28 + inPos] & 17592186044415L) >>> 16)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[28 + inPos] & 17592186044415L) >>> 24)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[28 + inPos] & 17592186044415L) >>> 32)) & 255);
out[159 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[28 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[29 + inPos] & 17592186044415L) << 4)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[29 + inPos] & 17592186044415L) >>> 4)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[29 + inPos] & 17592186044415L) >>> 12)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[29 + inPos] & 17592186044415L) >>> 20)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[29 + inPos] & 17592186044415L) >>> 28)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[29 + inPos] & 17592186044415L) >>> 36)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210]
((in[30 + inPos] & 17592186044415L))) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [____________________________54321098________]
((in[30 + inPos] & 17592186044415L) >>> 8)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [____________________32109876________________]
((in[30 + inPos] & 17592186044415L) >>> 16)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [____________10987654________________________]
((in[30 + inPos] & 17592186044415L) >>> 24)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____98765432________________________________]
((in[30 + inPos] & 17592186044415L) >>> 32)) & 255);
out[170 + outPos] = (byte)((
// [____3210]
// [3210________________________________________]
((in[30 + inPos] & 17592186044415L) >>> 40)
| // [7654____]
// [________________________________________3210]
((in[31 + inPos] & 17592186044415L) << 4)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________________________10987654____]
((in[31 + inPos] & 17592186044415L) >>> 4)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________________________98765432____________]
((in[31 + inPos] & 17592186044415L) >>> 12)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________________76543210____________________]
((in[31 + inPos] & 17592186044415L) >>> 20)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [________54321098____________________________]
((in[31 + inPos] & 17592186044415L) >>> 28)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [32109876____________________________________]
((in[31 + inPos] & 17592186044415L) >>> 36)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 17592186044415L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[ 6 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[ 7 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[ 8 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[ 9 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[10 + inPos]) << 36) & 17592186044415L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[11 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[12 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[13 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[14 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[15 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[16 + inPos]) << 40) & 17592186044415L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[19 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[20 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[21 + inPos]) << 36) & 17592186044415L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[22 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[23 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[24 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[25 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[26 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[27 + inPos]) << 40) & 17592186044415L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[30 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[31 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[32 + inPos]) << 36) & 17592186044415L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[34 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[35 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[36 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[37 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[38 + inPos]) << 40) & 17592186044415L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[39 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[40 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[41 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[42 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[43 + inPos]) << 36) & 17592186044415L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 17592186044415L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get( 6 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get( 7 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get( 8 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get( 9 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(10 + inPos)) << 36) & 17592186044415L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(11 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(12 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(13 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(14 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(15 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(16 + inPos)) << 40) & 17592186044415L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(19 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(20 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(21 + inPos)) << 36) & 17592186044415L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(22 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(23 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(24 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(25 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(26 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(27 + inPos)) << 40) & 17592186044415L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(30 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(31 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(32 + inPos)) << 36) & 17592186044415L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(34 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(35 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(36 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(37 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(38 + inPos)) << 40) & 17592186044415L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(39 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(40 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(41 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(42 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(43 + inPos)) << 36) & 17592186044415L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 17592186044415L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[ 5 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[ 6 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[ 7 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[ 8 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[ 9 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[10 + inPos]) << 36) & 17592186044415L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[11 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[12 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[13 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[14 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[15 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[16 + inPos]) << 40) & 17592186044415L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[16 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[17 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[18 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[19 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[20 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[21 + inPos]) << 36) & 17592186044415L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[22 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[23 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[24 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[25 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[26 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[27 + inPos]) << 40) & 17592186044415L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[30 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[31 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[32 + inPos]) << 36) & 17592186044415L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[33 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[34 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[35 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[36 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[37 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[38 + inPos]) << 40) & 17592186044415L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[38 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[39 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[40 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[41 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[42 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[43 + inPos]) << 36) & 17592186044415L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[44 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[45 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[46 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[47 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[48 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[49 + inPos]) << 40) & 17592186044415L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[49 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[50 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[51 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[52 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[53 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[54 + inPos]) << 36) & 17592186044415L);
out[10 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[55 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[56 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[57 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[58 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[59 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[60 + inPos]) << 40) & 17592186044415L);
out[11 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[60 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[61 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[62 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[63 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[64 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[65 + inPos]) << 36) & 17592186044415L);
out[12 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[66 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[67 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[68 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[69 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[70 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[71 + inPos]) << 40) & 17592186044415L);
out[13 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[71 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[72 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[73 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[74 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[75 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[76 + inPos]) << 36) & 17592186044415L);
out[14 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[77 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[78 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[79 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[80 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[81 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[82 + inPos]) << 40) & 17592186044415L);
out[15 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[85 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[86 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[87 + inPos]) << 36) & 17592186044415L);
out[16 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[88 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[89 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[90 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[91 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[92 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[93 + inPos]) << 40) & 17592186044415L);
out[17 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[93 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[94 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[95 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[96 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[97 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[98 + inPos]) << 36) & 17592186044415L);
out[18 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[99 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[100 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[101 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[102 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[103 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[104 + inPos]) << 40) & 17592186044415L);
out[19 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[104 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[105 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[106 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[107 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[108 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[109 + inPos]) << 36) & 17592186044415L);
out[20 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[110 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[111 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[112 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[113 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[114 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[115 + inPos]) << 40) & 17592186044415L);
out[21 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[115 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[116 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[117 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[118 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[119 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[120 + inPos]) << 36) & 17592186044415L);
out[22 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[121 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[122 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[123 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[124 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[125 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[126 + inPos]) << 40) & 17592186044415L);
out[23 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[126 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[127 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[128 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[129 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[130 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[131 + inPos]) << 36) & 17592186044415L);
out[24 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[132 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[133 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[134 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[135 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[136 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[137 + inPos]) << 40) & 17592186044415L);
out[25 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[137 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[138 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[139 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[140 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[141 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[142 + inPos]) << 36) & 17592186044415L);
out[26 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[143 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[144 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[145 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[146 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[147 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[148 + inPos]) << 40) & 17592186044415L);
out[27 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[148 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[149 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[150 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[151 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[152 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[153 + inPos]) << 36) & 17592186044415L);
out[28 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[154 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[155 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[156 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[157 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[158 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[159 + inPos]) << 40) & 17592186044415L);
out[29 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[159 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[160 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[161 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[162 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[163 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[164 + inPos]) << 36) & 17592186044415L);
out[30 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in[165 + inPos]) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in[166 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in[167 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in[168 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in[169 + inPos]) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in[170 + inPos]) << 40) & 17592186044415L);
out[31 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in[170 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in[171 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in[172 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in[173 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in[174 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in[175 + inPos]) << 36) & 17592186044415L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 17592186044415L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get( 5 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get( 6 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get( 7 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get( 8 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get( 9 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(10 + inPos)) << 36) & 17592186044415L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(11 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(12 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(13 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(14 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(15 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(16 + inPos)) << 40) & 17592186044415L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(16 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(17 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(18 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(19 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(20 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(21 + inPos)) << 36) & 17592186044415L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(22 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(23 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(24 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(25 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(26 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(27 + inPos)) << 40) & 17592186044415L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(30 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(31 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(32 + inPos)) << 36) & 17592186044415L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(33 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(34 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(35 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(36 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(37 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(38 + inPos)) << 40) & 17592186044415L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(38 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(39 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(40 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(41 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(42 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(43 + inPos)) << 36) & 17592186044415L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(44 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(45 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(46 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(47 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(48 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(49 + inPos)) << 40) & 17592186044415L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(49 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(50 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(51 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(52 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(53 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(54 + inPos)) << 36) & 17592186044415L);
out[10 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(55 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(56 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(57 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(58 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(59 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(60 + inPos)) << 40) & 17592186044415L);
out[11 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(60 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(61 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(62 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(63 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(64 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(65 + inPos)) << 36) & 17592186044415L);
out[12 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(66 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(67 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(68 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(69 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(70 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(71 + inPos)) << 40) & 17592186044415L);
out[13 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(71 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(72 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(73 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(74 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(75 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(76 + inPos)) << 36) & 17592186044415L);
out[14 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(77 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(78 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(79 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(80 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(81 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(82 + inPos)) << 40) & 17592186044415L);
out[15 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(85 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(86 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(87 + inPos)) << 36) & 17592186044415L);
out[16 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(88 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(89 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(90 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(91 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(92 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(93 + inPos)) << 40) & 17592186044415L);
out[17 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(93 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(94 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(95 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(96 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(97 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(98 + inPos)) << 36) & 17592186044415L);
out[18 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(99 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(100 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(101 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(102 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(103 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(104 + inPos)) << 40) & 17592186044415L);
out[19 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(104 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(105 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(106 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(107 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(108 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(109 + inPos)) << 36) & 17592186044415L);
out[20 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(110 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(111 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(112 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(113 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(114 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(115 + inPos)) << 40) & 17592186044415L);
out[21 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(115 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(116 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(117 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(118 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(119 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(120 + inPos)) << 36) & 17592186044415L);
out[22 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(121 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(122 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(123 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(124 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(125 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(126 + inPos)) << 40) & 17592186044415L);
out[23 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(126 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(127 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(128 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(129 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(130 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(131 + inPos)) << 36) & 17592186044415L);
out[24 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(132 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(133 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(134 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(135 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(136 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(137 + inPos)) << 40) & 17592186044415L);
out[25 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(137 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(138 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(139 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(140 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(141 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(142 + inPos)) << 36) & 17592186044415L);
out[26 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(143 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(144 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(145 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(146 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(147 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(148 + inPos)) << 40) & 17592186044415L);
out[27 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(148 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(149 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(150 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(151 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(152 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(153 + inPos)) << 36) & 17592186044415L);
out[28 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(154 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(155 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(156 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(157 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(158 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(159 + inPos)) << 40) & 17592186044415L);
out[29 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(159 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(160 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(161 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(162 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(163 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(164 + inPos)) << 36) & 17592186044415L);
out[30 + outPos] =
// [76543210]
// [____________________________________76543210]
((((long)in.get(165 + inPos)) ) & 255L)
| // [76543210]
// [____________________________54321098________]
((((long)in.get(166 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________32109876________________]
((((long)in.get(167 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________10987654________________________]
((((long)in.get(168 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____98765432________________________________]
((((long)in.get(169 + inPos)) << 32) & 1099511627775L)
| // [____3210]
// [3210________________________________________]
((((long)in.get(170 + inPos)) << 40) & 17592186044415L);
out[31 + outPos] =
// [7654____]
// [________________________________________3210]
((((long)in.get(170 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________10987654____]
((((long)in.get(171 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________98765432____________]
((((long)in.get(172 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________76543210____________________]
((((long)in.get(173 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________54321098____________________________]
((((long)in.get(174 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [32109876____________________________________]
((((long)in.get(175 + inPos)) << 36) & 17592186044415L);
}
}
private static final class Packer45 extends BytePackerForLong {
private Packer45() {
super(45);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210]
((in[ 0 + inPos] & 35184372088831L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098________]
((in[ 0 + inPos] & 35184372088831L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________32109876________________]
((in[ 0 + inPos] & 35184372088831L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________10987654________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____98765432________________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [43210________________________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 40)
| // [765_____]
// [__________________________________________210]
((in[ 1 + inPos] & 35184372088831L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543___]
((in[ 1 + inPos] & 35184372088831L) >>> 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________87654321___________]
((in[ 1 + inPos] & 35184372088831L) >>> 11)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________65432109___________________]
((in[ 1 + inPos] & 35184372088831L) >>> 19)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________43210987___________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 27)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__21098765___________________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 35)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [43___________________________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 43)
| // [765432__]
// [_______________________________________543210]
((in[ 2 + inPos] & 35184372088831L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876______]
((in[ 2 + inPos] & 35184372088831L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_______________________10987654______________]
((in[ 2 + inPos] & 35184372088831L) >>> 14)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________98765432______________________]
((in[ 2 + inPos] & 35184372088831L) >>> 22)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______76543210______________________________]
((in[ 2 + inPos] & 35184372088831L) >>> 30)) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [4321098______________________________________]
((in[ 2 + inPos] & 35184372088831L) >>> 38)
| // [7_______]
// [____________________________________________0]
((in[ 3 + inPos] & 35184372088831L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321_]
((in[ 3 + inPos] & 35184372088831L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________65432109_________]
((in[ 3 + inPos] & 35184372088831L) >>> 9)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________43210987_________________]
((in[ 3 + inPos] & 35184372088831L) >>> 17)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________21098765_________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 25)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____09876543_________________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 33)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [4321_________________________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 41)
| // [7654____]
// [_________________________________________3210]
((in[ 4 + inPos] & 35184372088831L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654____]
((in[ 4 + inPos] & 35184372088831L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_________________________98765432____________]
((in[ 4 + inPos] & 35184372088831L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_________________76543210____________________]
((in[ 4 + inPos] & 35184372088831L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_________54321098____________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_32109876____________________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 36)) & 255);
out[28 + outPos] = (byte)((
// [_______0]
// [4____________________________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 44)
| // [7654321_]
// [______________________________________6543210]
((in[ 5 + inPos] & 35184372088831L) << 1)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_______]
((in[ 5 + inPos] & 35184372088831L) >>> 7)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [______________________21098765_______________]
((in[ 5 + inPos] & 35184372088831L) >>> 15)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________09876543_______________________]
((in[ 5 + inPos] & 35184372088831L) >>> 23)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______87654321_______________________________]
((in[ 5 + inPos] & 35184372088831L) >>> 31)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [432109_______________________________________]
((in[ 5 + inPos] & 35184372088831L) >>> 39)
| // [76______]
// [___________________________________________10]
((in[ 6 + inPos] & 35184372088831L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432__]
((in[ 6 + inPos] & 35184372088831L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________________________76543210__________]
((in[ 6 + inPos] & 35184372088831L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___________________54321098__________________]
((in[ 6 + inPos] & 35184372088831L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________32109876__________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 26)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___10987654__________________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 34)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [432__________________________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 42)
| // [76543___]
// [________________________________________43210]
((in[ 7 + inPos] & 35184372088831L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_____]
((in[ 7 + inPos] & 35184372088831L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________09876543_____________]
((in[ 7 + inPos] & 35184372088831L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________87654321_____________________]
((in[ 7 + inPos] & 35184372088831L) >>> 21)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________65432109_____________________________]
((in[ 7 + inPos] & 35184372088831L) >>> 29)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [43210987_____________________________________]
((in[ 7 + inPos] & 35184372088831L) >>> 37)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210]
((in[ 0 + inPos] & 35184372088831L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098________]
((in[ 0 + inPos] & 35184372088831L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________32109876________________]
((in[ 0 + inPos] & 35184372088831L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________10987654________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____98765432________________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [___43210]
// [43210________________________________________]
((in[ 0 + inPos] & 35184372088831L) >>> 40)
| // [765_____]
// [__________________________________________210]
((in[ 1 + inPos] & 35184372088831L) << 5)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543___]
((in[ 1 + inPos] & 35184372088831L) >>> 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________87654321___________]
((in[ 1 + inPos] & 35184372088831L) >>> 11)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________65432109___________________]
((in[ 1 + inPos] & 35184372088831L) >>> 19)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________43210987___________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 27)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__21098765___________________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 35)) & 255);
out[11 + outPos] = (byte)((
// [______10]
// [43___________________________________________]
((in[ 1 + inPos] & 35184372088831L) >>> 43)
| // [765432__]
// [_______________________________________543210]
((in[ 2 + inPos] & 35184372088831L) << 2)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876______]
((in[ 2 + inPos] & 35184372088831L) >>> 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_______________________10987654______________]
((in[ 2 + inPos] & 35184372088831L) >>> 14)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________98765432______________________]
((in[ 2 + inPos] & 35184372088831L) >>> 22)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______76543210______________________________]
((in[ 2 + inPos] & 35184372088831L) >>> 30)) & 255);
out[16 + outPos] = (byte)((
// [_6543210]
// [4321098______________________________________]
((in[ 2 + inPos] & 35184372088831L) >>> 38)
| // [7_______]
// [____________________________________________0]
((in[ 3 + inPos] & 35184372088831L) << 7)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321_]
((in[ 3 + inPos] & 35184372088831L) >>> 1)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________65432109_________]
((in[ 3 + inPos] & 35184372088831L) >>> 9)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________43210987_________________]
((in[ 3 + inPos] & 35184372088831L) >>> 17)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________21098765_________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 25)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____09876543_________________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 33)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [4321_________________________________________]
((in[ 3 + inPos] & 35184372088831L) >>> 41)
| // [7654____]
// [_________________________________________3210]
((in[ 4 + inPos] & 35184372088831L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654____]
((in[ 4 + inPos] & 35184372088831L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [_________________________98765432____________]
((in[ 4 + inPos] & 35184372088831L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_________________76543210____________________]
((in[ 4 + inPos] & 35184372088831L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_________54321098____________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_32109876____________________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 36)) & 255);
out[28 + outPos] = (byte)((
// [_______0]
// [4____________________________________________]
((in[ 4 + inPos] & 35184372088831L) >>> 44)
| // [7654321_]
// [______________________________________6543210]
((in[ 5 + inPos] & 35184372088831L) << 1)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_______]
((in[ 5 + inPos] & 35184372088831L) >>> 7)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [______________________21098765_______________]
((in[ 5 + inPos] & 35184372088831L) >>> 15)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________09876543_______________________]
((in[ 5 + inPos] & 35184372088831L) >>> 23)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______87654321_______________________________]
((in[ 5 + inPos] & 35184372088831L) >>> 31)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [432109_______________________________________]
((in[ 5 + inPos] & 35184372088831L) >>> 39)
| // [76______]
// [___________________________________________10]
((in[ 6 + inPos] & 35184372088831L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432__]
((in[ 6 + inPos] & 35184372088831L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________________________76543210__________]
((in[ 6 + inPos] & 35184372088831L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___________________54321098__________________]
((in[ 6 + inPos] & 35184372088831L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________32109876__________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 26)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___10987654__________________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 34)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [432__________________________________________]
((in[ 6 + inPos] & 35184372088831L) >>> 42)
| // [76543___]
// [________________________________________43210]
((in[ 7 + inPos] & 35184372088831L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_____]
((in[ 7 + inPos] & 35184372088831L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________09876543_____________]
((in[ 7 + inPos] & 35184372088831L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________87654321_____________________]
((in[ 7 + inPos] & 35184372088831L) >>> 21)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________65432109_____________________________]
((in[ 7 + inPos] & 35184372088831L) >>> 29)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [43210987_____________________________________]
((in[ 7 + inPos] & 35184372088831L) >>> 37)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210]
((in[ 8 + inPos] & 35184372088831L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098________]
((in[ 8 + inPos] & 35184372088831L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_____________________32109876________________]
((in[ 8 + inPos] & 35184372088831L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_____________10987654________________________]
((in[ 8 + inPos] & 35184372088831L) >>> 24)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____98765432________________________________]
((in[ 8 + inPos] & 35184372088831L) >>> 32)) & 255);
out[50 + outPos] = (byte)((
// [___43210]
// [43210________________________________________]
((in[ 8 + inPos] & 35184372088831L) >>> 40)
| // [765_____]
// [__________________________________________210]
((in[ 9 + inPos] & 35184372088831L) << 5)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543___]
((in[ 9 + inPos] & 35184372088831L) >>> 3)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________________________87654321___________]
((in[ 9 + inPos] & 35184372088831L) >>> 11)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__________________65432109___________________]
((in[ 9 + inPos] & 35184372088831L) >>> 19)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__________43210987___________________________]
((in[ 9 + inPos] & 35184372088831L) >>> 27)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__21098765___________________________________]
((in[ 9 + inPos] & 35184372088831L) >>> 35)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [43___________________________________________]
((in[ 9 + inPos] & 35184372088831L) >>> 43)
| // [765432__]
// [_______________________________________543210]
((in[10 + inPos] & 35184372088831L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876______]
((in[10 + inPos] & 35184372088831L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_______________________10987654______________]
((in[10 + inPos] & 35184372088831L) >>> 14)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_______________98765432______________________]
((in[10 + inPos] & 35184372088831L) >>> 22)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_______76543210______________________________]
((in[10 + inPos] & 35184372088831L) >>> 30)) & 255);
out[61 + outPos] = (byte)((
// [_6543210]
// [4321098______________________________________]
((in[10 + inPos] & 35184372088831L) >>> 38)
| // [7_______]
// [____________________________________________0]
((in[11 + inPos] & 35184372088831L) << 7)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321_]
((in[11 + inPos] & 35184372088831L) >>> 1)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________________65432109_________]
((in[11 + inPos] & 35184372088831L) >>> 9)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________________43210987_________________]
((in[11 + inPos] & 35184372088831L) >>> 17)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________21098765_________________________]
((in[11 + inPos] & 35184372088831L) >>> 25)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____09876543_________________________________]
((in[11 + inPos] & 35184372088831L) >>> 33)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [4321_________________________________________]
((in[11 + inPos] & 35184372088831L) >>> 41)
| // [7654____]
// [_________________________________________3210]
((in[12 + inPos] & 35184372088831L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654____]
((in[12 + inPos] & 35184372088831L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_________________________98765432____________]
((in[12 + inPos] & 35184372088831L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_________________76543210____________________]
((in[12 + inPos] & 35184372088831L) >>> 20)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [_________54321098____________________________]
((in[12 + inPos] & 35184372088831L) >>> 28)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_32109876____________________________________]
((in[12 + inPos] & 35184372088831L) >>> 36)) & 255);
out[73 + outPos] = (byte)((
// [_______0]
// [4____________________________________________]
((in[12 + inPos] & 35184372088831L) >>> 44)
| // [7654321_]
// [______________________________________6543210]
((in[13 + inPos] & 35184372088831L) << 1)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_______]
((in[13 + inPos] & 35184372088831L) >>> 7)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________21098765_______________]
((in[13 + inPos] & 35184372088831L) >>> 15)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________09876543_______________________]
((in[13 + inPos] & 35184372088831L) >>> 23)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______87654321_______________________________]
((in[13 + inPos] & 35184372088831L) >>> 31)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [432109_______________________________________]
((in[13 + inPos] & 35184372088831L) >>> 39)
| // [76______]
// [___________________________________________10]
((in[14 + inPos] & 35184372088831L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432__]
((in[14 + inPos] & 35184372088831L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [___________________________76543210__________]
((in[14 + inPos] & 35184372088831L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [___________________54321098__________________]
((in[14 + inPos] & 35184372088831L) >>> 18)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [___________32109876__________________________]
((in[14 + inPos] & 35184372088831L) >>> 26)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [___10987654__________________________________]
((in[14 + inPos] & 35184372088831L) >>> 34)) & 255);
out[84 + outPos] = (byte)((
// [_____210]
// [432__________________________________________]
((in[14 + inPos] & 35184372088831L) >>> 42)
| // [76543___]
// [________________________________________43210]
((in[15 + inPos] & 35184372088831L) << 3)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_____]
((in[15 + inPos] & 35184372088831L) >>> 5)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________09876543_____________]
((in[15 + inPos] & 35184372088831L) >>> 13)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________87654321_____________________]
((in[15 + inPos] & 35184372088831L) >>> 21)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________65432109_____________________________]
((in[15 + inPos] & 35184372088831L) >>> 29)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [43210987_____________________________________]
((in[15 + inPos] & 35184372088831L) >>> 37)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210]
((in[16 + inPos] & 35184372088831L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098________]
((in[16 + inPos] & 35184372088831L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [_____________________32109876________________]
((in[16 + inPos] & 35184372088831L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_____________10987654________________________]
((in[16 + inPos] & 35184372088831L) >>> 24)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_____98765432________________________________]
((in[16 + inPos] & 35184372088831L) >>> 32)) & 255);
out[95 + outPos] = (byte)((
// [___43210]
// [43210________________________________________]
((in[16 + inPos] & 35184372088831L) >>> 40)
| // [765_____]
// [__________________________________________210]
((in[17 + inPos] & 35184372088831L) << 5)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543___]
((in[17 + inPos] & 35184372088831L) >>> 3)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [__________________________87654321___________]
((in[17 + inPos] & 35184372088831L) >>> 11)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [__________________65432109___________________]
((in[17 + inPos] & 35184372088831L) >>> 19)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [__________43210987___________________________]
((in[17 + inPos] & 35184372088831L) >>> 27)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__21098765___________________________________]
((in[17 + inPos] & 35184372088831L) >>> 35)) & 255);
out[101 + outPos] = (byte)((
// [______10]
// [43___________________________________________]
((in[17 + inPos] & 35184372088831L) >>> 43)
| // [765432__]
// [_______________________________________543210]
((in[18 + inPos] & 35184372088831L) << 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876______]
((in[18 + inPos] & 35184372088831L) >>> 6)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_______________________10987654______________]
((in[18 + inPos] & 35184372088831L) >>> 14)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [_______________98765432______________________]
((in[18 + inPos] & 35184372088831L) >>> 22)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [_______76543210______________________________]
((in[18 + inPos] & 35184372088831L) >>> 30)) & 255);
out[106 + outPos] = (byte)((
// [_6543210]
// [4321098______________________________________]
((in[18 + inPos] & 35184372088831L) >>> 38)
| // [7_______]
// [____________________________________________0]
((in[19 + inPos] & 35184372088831L) << 7)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321_]
((in[19 + inPos] & 35184372088831L) >>> 1)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________________________65432109_________]
((in[19 + inPos] & 35184372088831L) >>> 9)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____________________43210987_________________]
((in[19 + inPos] & 35184372088831L) >>> 17)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________21098765_________________________]
((in[19 + inPos] & 35184372088831L) >>> 25)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____09876543_________________________________]
((in[19 + inPos] & 35184372088831L) >>> 33)) & 255);
out[112 + outPos] = (byte)((
// [____3210]
// [4321_________________________________________]
((in[19 + inPos] & 35184372088831L) >>> 41)
| // [7654____]
// [_________________________________________3210]
((in[20 + inPos] & 35184372088831L) << 4)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654____]
((in[20 + inPos] & 35184372088831L) >>> 4)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_________________________98765432____________]
((in[20 + inPos] & 35184372088831L) >>> 12)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_________________76543210____________________]
((in[20 + inPos] & 35184372088831L) >>> 20)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_________54321098____________________________]
((in[20 + inPos] & 35184372088831L) >>> 28)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_32109876____________________________________]
((in[20 + inPos] & 35184372088831L) >>> 36)) & 255);
out[118 + outPos] = (byte)((
// [_______0]
// [4____________________________________________]
((in[20 + inPos] & 35184372088831L) >>> 44)
| // [7654321_]
// [______________________________________6543210]
((in[21 + inPos] & 35184372088831L) << 1)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_______]
((in[21 + inPos] & 35184372088831L) >>> 7)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [______________________21098765_______________]
((in[21 + inPos] & 35184372088831L) >>> 15)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [______________09876543_______________________]
((in[21 + inPos] & 35184372088831L) >>> 23)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [______87654321_______________________________]
((in[21 + inPos] & 35184372088831L) >>> 31)) & 255);
out[123 + outPos] = (byte)((
// [__543210]
// [432109_______________________________________]
((in[21 + inPos] & 35184372088831L) >>> 39)
| // [76______]
// [___________________________________________10]
((in[22 + inPos] & 35184372088831L) << 6)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432__]
((in[22 + inPos] & 35184372088831L) >>> 2)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [___________________________76543210__________]
((in[22 + inPos] & 35184372088831L) >>> 10)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [___________________54321098__________________]
((in[22 + inPos] & 35184372088831L) >>> 18)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [___________32109876__________________________]
((in[22 + inPos] & 35184372088831L) >>> 26)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [___10987654__________________________________]
((in[22 + inPos] & 35184372088831L) >>> 34)) & 255);
out[129 + outPos] = (byte)((
// [_____210]
// [432__________________________________________]
((in[22 + inPos] & 35184372088831L) >>> 42)
| // [76543___]
// [________________________________________43210]
((in[23 + inPos] & 35184372088831L) << 3)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_____]
((in[23 + inPos] & 35184372088831L) >>> 5)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________09876543_____________]
((in[23 + inPos] & 35184372088831L) >>> 13)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________87654321_____________________]
((in[23 + inPos] & 35184372088831L) >>> 21)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________65432109_____________________________]
((in[23 + inPos] & 35184372088831L) >>> 29)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [43210987_____________________________________]
((in[23 + inPos] & 35184372088831L) >>> 37)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210]
((in[24 + inPos] & 35184372088831L))) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098________]
((in[24 + inPos] & 35184372088831L) >>> 8)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [_____________________32109876________________]
((in[24 + inPos] & 35184372088831L) >>> 16)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [_____________10987654________________________]
((in[24 + inPos] & 35184372088831L) >>> 24)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [_____98765432________________________________]
((in[24 + inPos] & 35184372088831L) >>> 32)) & 255);
out[140 + outPos] = (byte)((
// [___43210]
// [43210________________________________________]
((in[24 + inPos] & 35184372088831L) >>> 40)
| // [765_____]
// [__________________________________________210]
((in[25 + inPos] & 35184372088831L) << 5)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543___]
((in[25 + inPos] & 35184372088831L) >>> 3)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [__________________________87654321___________]
((in[25 + inPos] & 35184372088831L) >>> 11)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [__________________65432109___________________]
((in[25 + inPos] & 35184372088831L) >>> 19)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [__________43210987___________________________]
((in[25 + inPos] & 35184372088831L) >>> 27)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__21098765___________________________________]
((in[25 + inPos] & 35184372088831L) >>> 35)) & 255);
out[146 + outPos] = (byte)((
// [______10]
// [43___________________________________________]
((in[25 + inPos] & 35184372088831L) >>> 43)
| // [765432__]
// [_______________________________________543210]
((in[26 + inPos] & 35184372088831L) << 2)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876______]
((in[26 + inPos] & 35184372088831L) >>> 6)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_______________________10987654______________]
((in[26 + inPos] & 35184372088831L) >>> 14)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [_______________98765432______________________]
((in[26 + inPos] & 35184372088831L) >>> 22)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [_______76543210______________________________]
((in[26 + inPos] & 35184372088831L) >>> 30)) & 255);
out[151 + outPos] = (byte)((
// [_6543210]
// [4321098______________________________________]
((in[26 + inPos] & 35184372088831L) >>> 38)
| // [7_______]
// [____________________________________________0]
((in[27 + inPos] & 35184372088831L) << 7)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321_]
((in[27 + inPos] & 35184372088831L) >>> 1)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [____________________________65432109_________]
((in[27 + inPos] & 35184372088831L) >>> 9)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________43210987_________________]
((in[27 + inPos] & 35184372088831L) >>> 17)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________21098765_________________________]
((in[27 + inPos] & 35184372088831L) >>> 25)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____09876543_________________________________]
((in[27 + inPos] & 35184372088831L) >>> 33)) & 255);
out[157 + outPos] = (byte)((
// [____3210]
// [4321_________________________________________]
((in[27 + inPos] & 35184372088831L) >>> 41)
| // [7654____]
// [_________________________________________3210]
((in[28 + inPos] & 35184372088831L) << 4)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654____]
((in[28 + inPos] & 35184372088831L) >>> 4)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [_________________________98765432____________]
((in[28 + inPos] & 35184372088831L) >>> 12)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [_________________76543210____________________]
((in[28 + inPos] & 35184372088831L) >>> 20)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [_________54321098____________________________]
((in[28 + inPos] & 35184372088831L) >>> 28)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [_32109876____________________________________]
((in[28 + inPos] & 35184372088831L) >>> 36)) & 255);
out[163 + outPos] = (byte)((
// [_______0]
// [4____________________________________________]
((in[28 + inPos] & 35184372088831L) >>> 44)
| // [7654321_]
// [______________________________________6543210]
((in[29 + inPos] & 35184372088831L) << 1)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_______]
((in[29 + inPos] & 35184372088831L) >>> 7)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______________________21098765_______________]
((in[29 + inPos] & 35184372088831L) >>> 15)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [______________09876543_______________________]
((in[29 + inPos] & 35184372088831L) >>> 23)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [______87654321_______________________________]
((in[29 + inPos] & 35184372088831L) >>> 31)) & 255);
out[168 + outPos] = (byte)((
// [__543210]
// [432109_______________________________________]
((in[29 + inPos] & 35184372088831L) >>> 39)
| // [76______]
// [___________________________________________10]
((in[30 + inPos] & 35184372088831L) << 6)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432__]
((in[30 + inPos] & 35184372088831L) >>> 2)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [___________________________76543210__________]
((in[30 + inPos] & 35184372088831L) >>> 10)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [___________________54321098__________________]
((in[30 + inPos] & 35184372088831L) >>> 18)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [___________32109876__________________________]
((in[30 + inPos] & 35184372088831L) >>> 26)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [___10987654__________________________________]
((in[30 + inPos] & 35184372088831L) >>> 34)) & 255);
out[174 + outPos] = (byte)((
// [_____210]
// [432__________________________________________]
((in[30 + inPos] & 35184372088831L) >>> 42)
| // [76543___]
// [________________________________________43210]
((in[31 + inPos] & 35184372088831L) << 3)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_____]
((in[31 + inPos] & 35184372088831L) >>> 5)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________09876543_____________]
((in[31 + inPos] & 35184372088831L) >>> 13)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________87654321_____________________]
((in[31 + inPos] & 35184372088831L) >>> 21)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________65432109_____________________________]
((in[31 + inPos] & 35184372088831L) >>> 29)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [43210987_____________________________________]
((in[31 + inPos] & 35184372088831L) >>> 37)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 35184372088831L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in[ 6 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in[ 7 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in[ 8 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in[ 9 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in[10 + inPos]) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in[11 + inPos]) << 43) & 35184372088831L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in[13 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in[14 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in[15 + inPos]) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in[16 + inPos]) << 38) & 35184372088831L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in[17 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in[18 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in[19 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in[20 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in[21 + inPos]) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in[22 + inPos]) << 41) & 35184372088831L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in[27 + inPos]) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in[28 + inPos]) << 44) & 35184372088831L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in[28 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in[29 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in[30 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in[31 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in[32 + inPos]) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in[33 + inPos]) << 39) & 35184372088831L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in[37 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in[38 + inPos]) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in[39 + inPos]) << 42) & 35184372088831L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in[42 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in[43 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in[44 + inPos]) << 37) & 35184372088831L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 35184372088831L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in.get( 6 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in.get( 7 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in.get( 8 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in.get( 9 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in.get(10 + inPos)) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in.get(11 + inPos)) << 43) & 35184372088831L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in.get(13 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in.get(14 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in.get(15 + inPos)) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in.get(16 + inPos)) << 38) & 35184372088831L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in.get(18 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in.get(19 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in.get(20 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in.get(21 + inPos)) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in.get(22 + inPos)) << 41) & 35184372088831L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in.get(27 + inPos)) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in.get(28 + inPos)) << 44) & 35184372088831L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in.get(28 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in.get(29 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in.get(30 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in.get(31 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in.get(32 + inPos)) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in.get(33 + inPos)) << 39) & 35184372088831L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in.get(37 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in.get(38 + inPos)) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in.get(39 + inPos)) << 42) & 35184372088831L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in.get(42 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in.get(43 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in.get(44 + inPos)) << 37) & 35184372088831L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 35184372088831L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in[ 5 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in[ 6 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in[ 7 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in[ 8 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in[ 9 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in[10 + inPos]) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in[11 + inPos]) << 43) & 35184372088831L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in[11 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in[12 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in[13 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in[14 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in[15 + inPos]) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in[16 + inPos]) << 38) & 35184372088831L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in[16 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in[17 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in[18 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in[19 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in[20 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in[21 + inPos]) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in[22 + inPos]) << 41) & 35184372088831L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in[27 + inPos]) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in[28 + inPos]) << 44) & 35184372088831L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in[28 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in[29 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in[30 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in[31 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in[32 + inPos]) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in[33 + inPos]) << 39) & 35184372088831L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in[37 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in[38 + inPos]) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in[39 + inPos]) << 42) & 35184372088831L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in[42 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in[43 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in[44 + inPos]) << 37) & 35184372088831L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in[48 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in[49 + inPos]) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in[50 + inPos]) << 40) & 35184372088831L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in[50 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in[51 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in[52 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in[53 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in[54 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in[55 + inPos]) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in[56 + inPos]) << 43) & 35184372088831L);
out[10 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in[58 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in[59 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in[60 + inPos]) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in[61 + inPos]) << 38) & 35184372088831L);
out[11 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in[61 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in[62 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in[63 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in[64 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in[65 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in[66 + inPos]) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in[67 + inPos]) << 41) & 35184372088831L);
out[12 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in[70 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in[71 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in[72 + inPos]) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in[73 + inPos]) << 44) & 35184372088831L);
out[13 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in[73 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in[74 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in[75 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in[76 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in[77 + inPos]) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in[78 + inPos]) << 39) & 35184372088831L);
out[14 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in[81 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in[82 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in[83 + inPos]) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in[84 + inPos]) << 42) & 35184372088831L);
out[15 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in[84 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in[85 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in[86 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in[87 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in[88 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in[89 + inPos]) << 37) & 35184372088831L);
out[16 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in[93 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in[94 + inPos]) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in[95 + inPos]) << 40) & 35184372088831L);
out[17 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in[95 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in[96 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in[97 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in[98 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in[99 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in[100 + inPos]) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in[101 + inPos]) << 43) & 35184372088831L);
out[18 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in[101 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in[102 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in[103 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in[104 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in[105 + inPos]) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in[106 + inPos]) << 38) & 35184372088831L);
out[19 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in[106 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in[107 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in[108 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in[109 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in[110 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in[111 + inPos]) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in[112 + inPos]) << 41) & 35184372088831L);
out[20 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in[112 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in[113 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in[114 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in[115 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in[116 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in[117 + inPos]) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in[118 + inPos]) << 44) & 35184372088831L);
out[21 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in[118 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in[119 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in[120 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in[121 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in[122 + inPos]) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in[123 + inPos]) << 39) & 35184372088831L);
out[22 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in[123 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in[124 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in[125 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in[126 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in[127 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in[128 + inPos]) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in[129 + inPos]) << 42) & 35184372088831L);
out[23 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in[129 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in[130 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in[131 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in[132 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in[133 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in[134 + inPos]) << 37) & 35184372088831L);
out[24 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in[135 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in[136 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in[137 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in[138 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in[139 + inPos]) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in[140 + inPos]) << 40) & 35184372088831L);
out[25 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in[140 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in[141 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in[142 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in[143 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in[144 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in[145 + inPos]) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in[146 + inPos]) << 43) & 35184372088831L);
out[26 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in[146 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in[147 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in[148 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in[149 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in[150 + inPos]) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in[151 + inPos]) << 38) & 35184372088831L);
out[27 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in[151 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in[152 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in[153 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in[154 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in[155 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in[156 + inPos]) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in[157 + inPos]) << 41) & 35184372088831L);
out[28 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in[157 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in[158 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in[159 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in[160 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in[161 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in[162 + inPos]) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in[163 + inPos]) << 44) & 35184372088831L);
out[29 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in[163 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in[164 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in[165 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in[166 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in[167 + inPos]) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in[168 + inPos]) << 39) & 35184372088831L);
out[30 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in[168 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in[169 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in[170 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in[171 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in[172 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in[173 + inPos]) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in[174 + inPos]) << 42) & 35184372088831L);
out[31 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in[174 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in[175 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in[176 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in[177 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in[178 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in[179 + inPos]) << 37) & 35184372088831L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 35184372088831L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in.get( 5 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in.get( 6 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in.get( 7 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in.get( 8 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in.get( 9 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in.get(10 + inPos)) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in.get(11 + inPos)) << 43) & 35184372088831L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in.get(11 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in.get(12 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in.get(13 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in.get(14 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in.get(15 + inPos)) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in.get(16 + inPos)) << 38) & 35184372088831L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in.get(16 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in.get(17 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in.get(18 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in.get(19 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in.get(20 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in.get(21 + inPos)) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in.get(22 + inPos)) << 41) & 35184372088831L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in.get(27 + inPos)) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in.get(28 + inPos)) << 44) & 35184372088831L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in.get(28 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in.get(29 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in.get(30 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in.get(31 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in.get(32 + inPos)) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in.get(33 + inPos)) << 39) & 35184372088831L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in.get(37 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in.get(38 + inPos)) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in.get(39 + inPos)) << 42) & 35184372088831L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in.get(42 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in.get(43 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in.get(44 + inPos)) << 37) & 35184372088831L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in.get(48 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in.get(49 + inPos)) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in.get(50 + inPos)) << 40) & 35184372088831L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in.get(50 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in.get(51 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in.get(52 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in.get(53 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in.get(54 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in.get(55 + inPos)) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in.get(56 + inPos)) << 43) & 35184372088831L);
out[10 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in.get(58 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in.get(59 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in.get(60 + inPos)) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in.get(61 + inPos)) << 38) & 35184372088831L);
out[11 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in.get(61 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in.get(62 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in.get(63 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in.get(64 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in.get(65 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in.get(66 + inPos)) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in.get(67 + inPos)) << 41) & 35184372088831L);
out[12 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in.get(70 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in.get(71 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in.get(72 + inPos)) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in.get(73 + inPos)) << 44) & 35184372088831L);
out[13 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in.get(73 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in.get(74 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in.get(75 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in.get(76 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in.get(77 + inPos)) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in.get(78 + inPos)) << 39) & 35184372088831L);
out[14 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in.get(81 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in.get(82 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in.get(83 + inPos)) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in.get(84 + inPos)) << 42) & 35184372088831L);
out[15 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in.get(84 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in.get(85 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in.get(86 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in.get(87 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in.get(88 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in.get(89 + inPos)) << 37) & 35184372088831L);
out[16 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in.get(93 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in.get(94 + inPos)) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in.get(95 + inPos)) << 40) & 35184372088831L);
out[17 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in.get(95 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in.get(96 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in.get(97 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in.get(98 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in.get(99 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in.get(100 + inPos)) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in.get(101 + inPos)) << 43) & 35184372088831L);
out[18 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in.get(101 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in.get(102 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in.get(103 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in.get(104 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in.get(105 + inPos)) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in.get(106 + inPos)) << 38) & 35184372088831L);
out[19 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in.get(106 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in.get(107 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in.get(108 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in.get(109 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in.get(110 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in.get(111 + inPos)) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in.get(112 + inPos)) << 41) & 35184372088831L);
out[20 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in.get(112 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in.get(113 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in.get(114 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in.get(115 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in.get(116 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in.get(117 + inPos)) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in.get(118 + inPos)) << 44) & 35184372088831L);
out[21 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in.get(118 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in.get(119 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in.get(120 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in.get(121 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in.get(122 + inPos)) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in.get(123 + inPos)) << 39) & 35184372088831L);
out[22 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in.get(123 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in.get(124 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in.get(125 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in.get(126 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in.get(127 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in.get(128 + inPos)) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in.get(129 + inPos)) << 42) & 35184372088831L);
out[23 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in.get(129 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in.get(130 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in.get(131 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in.get(132 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in.get(133 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in.get(134 + inPos)) << 37) & 35184372088831L);
out[24 + outPos] =
// [76543210]
// [_____________________________________76543210]
((((long)in.get(135 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________54321098________]
((((long)in.get(136 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________32109876________________]
((((long)in.get(137 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________10987654________________________]
((((long)in.get(138 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____98765432________________________________]
((((long)in.get(139 + inPos)) << 32) & 1099511627775L)
| // [___43210]
// [43210________________________________________]
((((long)in.get(140 + inPos)) << 40) & 35184372088831L);
out[25 + outPos] =
// [765_____]
// [__________________________________________210]
((((long)in.get(140 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________09876543___]
((((long)in.get(141 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________87654321___________]
((((long)in.get(142 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________65432109___________________]
((((long)in.get(143 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________43210987___________________________]
((((long)in.get(144 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__21098765___________________________________]
((((long)in.get(145 + inPos)) << 35) & 8796093022207L)
| // [______10]
// [43___________________________________________]
((((long)in.get(146 + inPos)) << 43) & 35184372088831L);
out[26 + outPos] =
// [765432__]
// [_______________________________________543210]
((((long)in.get(146 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________32109876______]
((((long)in.get(147 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________10987654______________]
((((long)in.get(148 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________98765432______________________]
((((long)in.get(149 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______76543210______________________________]
((((long)in.get(150 + inPos)) << 30) & 274877906943L)
| // [_6543210]
// [4321098______________________________________]
((((long)in.get(151 + inPos)) << 38) & 35184372088831L);
out[27 + outPos] =
// [7_______]
// [____________________________________________0]
((((long)in.get(151 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________87654321_]
((((long)in.get(152 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________65432109_________]
((((long)in.get(153 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________43210987_________________]
((((long)in.get(154 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________21098765_________________________]
((((long)in.get(155 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____09876543_________________________________]
((((long)in.get(156 + inPos)) << 33) & 2199023255551L)
| // [____3210]
// [4321_________________________________________]
((((long)in.get(157 + inPos)) << 41) & 35184372088831L);
out[28 + outPos] =
// [7654____]
// [_________________________________________3210]
((((long)in.get(157 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________10987654____]
((((long)in.get(158 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________98765432____________]
((((long)in.get(159 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________76543210____________________]
((((long)in.get(160 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________54321098____________________________]
((((long)in.get(161 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_32109876____________________________________]
((((long)in.get(162 + inPos)) << 36) & 17592186044415L)
| // [_______0]
// [4____________________________________________]
((((long)in.get(163 + inPos)) << 44) & 35184372088831L);
out[29 + outPos] =
// [7654321_]
// [______________________________________6543210]
((((long)in.get(163 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________43210987_______]
((((long)in.get(164 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________21098765_______________]
((((long)in.get(165 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________09876543_______________________]
((((long)in.get(166 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______87654321_______________________________]
((((long)in.get(167 + inPos)) << 31) & 549755813887L)
| // [__543210]
// [432109_______________________________________]
((((long)in.get(168 + inPos)) << 39) & 35184372088831L);
out[30 + outPos] =
// [76______]
// [___________________________________________10]
((((long)in.get(168 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________98765432__]
((((long)in.get(169 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________76543210__________]
((((long)in.get(170 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________54321098__________________]
((((long)in.get(171 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________32109876__________________________]
((((long)in.get(172 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___10987654__________________________________]
((((long)in.get(173 + inPos)) << 34) & 4398046511103L)
| // [_____210]
// [432__________________________________________]
((((long)in.get(174 + inPos)) << 42) & 35184372088831L);
out[31 + outPos] =
// [76543___]
// [________________________________________43210]
((((long)in.get(174 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________21098765_____]
((((long)in.get(175 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________09876543_____________]
((((long)in.get(176 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________87654321_____________________]
((((long)in.get(177 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________65432109_____________________________]
((((long)in.get(178 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [43210987_____________________________________]
((((long)in.get(179 + inPos)) << 37) & 35184372088831L);
}
}
private static final class Packer46 extends BytePackerForLong {
private Packer46() {
super(46);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[ 0 + inPos] & 70368744177663L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[ 0 + inPos] & 70368744177663L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[ 0 + inPos] & 70368744177663L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[ 1 + inPos] & 70368744177663L) << 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[ 1 + inPos] & 70368744177663L) >>> 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[ 1 + inPos] & 70368744177663L) >>> 10)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[ 1 + inPos] & 70368744177663L) >>> 18)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 26)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 34)) & 255);
out[11 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[ 2 + inPos] & 70368744177663L) << 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[ 2 + inPos] & 70368744177663L) >>> 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[ 2 + inPos] & 70368744177663L) >>> 12)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[ 2 + inPos] & 70368744177663L) >>> 20)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 28)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 36)) & 255);
out[17 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[ 3 + inPos] & 70368744177663L) << 2)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[ 3 + inPos] & 70368744177663L) >>> 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[ 3 + inPos] & 70368744177663L) >>> 14)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[ 3 + inPos] & 70368744177663L) >>> 22)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[ 3 + inPos] & 70368744177663L) >>> 30)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[ 3 + inPos] & 70368744177663L) >>> 38)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[ 4 + inPos] & 70368744177663L))) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[ 4 + inPos] & 70368744177663L) >>> 8)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[ 4 + inPos] & 70368744177663L) >>> 16)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 24)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 32)) & 255);
out[28 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[ 5 + inPos] & 70368744177663L) << 6)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[ 5 + inPos] & 70368744177663L) >>> 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[ 5 + inPos] & 70368744177663L) >>> 10)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[ 5 + inPos] & 70368744177663L) >>> 18)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 26)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 34)) & 255);
out[34 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[ 6 + inPos] & 70368744177663L) << 4)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[ 6 + inPos] & 70368744177663L) >>> 4)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[ 6 + inPos] & 70368744177663L) >>> 12)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[ 6 + inPos] & 70368744177663L) >>> 20)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 28)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 36)) & 255);
out[40 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[ 7 + inPos] & 70368744177663L) << 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[ 7 + inPos] & 70368744177663L) >>> 6)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[ 7 + inPos] & 70368744177663L) >>> 14)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[ 7 + inPos] & 70368744177663L) >>> 22)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[ 7 + inPos] & 70368744177663L) >>> 30)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[ 7 + inPos] & 70368744177663L) >>> 38)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[ 0 + inPos] & 70368744177663L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[ 0 + inPos] & 70368744177663L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[ 0 + inPos] & 70368744177663L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[ 0 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[ 1 + inPos] & 70368744177663L) << 6)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[ 1 + inPos] & 70368744177663L) >>> 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[ 1 + inPos] & 70368744177663L) >>> 10)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[ 1 + inPos] & 70368744177663L) >>> 18)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 26)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 34)) & 255);
out[11 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[ 1 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[ 2 + inPos] & 70368744177663L) << 4)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[ 2 + inPos] & 70368744177663L) >>> 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[ 2 + inPos] & 70368744177663L) >>> 12)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[ 2 + inPos] & 70368744177663L) >>> 20)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 28)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 36)) & 255);
out[17 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[ 2 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[ 3 + inPos] & 70368744177663L) << 2)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[ 3 + inPos] & 70368744177663L) >>> 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[ 3 + inPos] & 70368744177663L) >>> 14)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[ 3 + inPos] & 70368744177663L) >>> 22)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[ 3 + inPos] & 70368744177663L) >>> 30)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[ 3 + inPos] & 70368744177663L) >>> 38)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[ 4 + inPos] & 70368744177663L))) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[ 4 + inPos] & 70368744177663L) >>> 8)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[ 4 + inPos] & 70368744177663L) >>> 16)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 24)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 32)) & 255);
out[28 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[ 4 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[ 5 + inPos] & 70368744177663L) << 6)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[ 5 + inPos] & 70368744177663L) >>> 2)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[ 5 + inPos] & 70368744177663L) >>> 10)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[ 5 + inPos] & 70368744177663L) >>> 18)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 26)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 34)) & 255);
out[34 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[ 5 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[ 6 + inPos] & 70368744177663L) << 4)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[ 6 + inPos] & 70368744177663L) >>> 4)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[ 6 + inPos] & 70368744177663L) >>> 12)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[ 6 + inPos] & 70368744177663L) >>> 20)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 28)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 36)) & 255);
out[40 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[ 6 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[ 7 + inPos] & 70368744177663L) << 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[ 7 + inPos] & 70368744177663L) >>> 6)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[ 7 + inPos] & 70368744177663L) >>> 14)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[ 7 + inPos] & 70368744177663L) >>> 22)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[ 7 + inPos] & 70368744177663L) >>> 30)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[ 7 + inPos] & 70368744177663L) >>> 38)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[ 8 + inPos] & 70368744177663L))) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[ 8 + inPos] & 70368744177663L) >>> 8)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[ 8 + inPos] & 70368744177663L) >>> 16)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[ 8 + inPos] & 70368744177663L) >>> 24)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[ 8 + inPos] & 70368744177663L) >>> 32)) & 255);
out[51 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[ 8 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[ 9 + inPos] & 70368744177663L) << 6)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[ 9 + inPos] & 70368744177663L) >>> 2)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[ 9 + inPos] & 70368744177663L) >>> 10)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[ 9 + inPos] & 70368744177663L) >>> 18)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[ 9 + inPos] & 70368744177663L) >>> 26)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[ 9 + inPos] & 70368744177663L) >>> 34)) & 255);
out[57 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[ 9 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[10 + inPos] & 70368744177663L) << 4)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[10 + inPos] & 70368744177663L) >>> 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[10 + inPos] & 70368744177663L) >>> 12)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[10 + inPos] & 70368744177663L) >>> 20)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[10 + inPos] & 70368744177663L) >>> 28)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[10 + inPos] & 70368744177663L) >>> 36)) & 255);
out[63 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[10 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[11 + inPos] & 70368744177663L) << 2)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[11 + inPos] & 70368744177663L) >>> 6)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[11 + inPos] & 70368744177663L) >>> 14)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[11 + inPos] & 70368744177663L) >>> 22)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[11 + inPos] & 70368744177663L) >>> 30)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[11 + inPos] & 70368744177663L) >>> 38)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[12 + inPos] & 70368744177663L))) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[12 + inPos] & 70368744177663L) >>> 8)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[12 + inPos] & 70368744177663L) >>> 16)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[12 + inPos] & 70368744177663L) >>> 24)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[12 + inPos] & 70368744177663L) >>> 32)) & 255);
out[74 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[12 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[13 + inPos] & 70368744177663L) << 6)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[13 + inPos] & 70368744177663L) >>> 2)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[13 + inPos] & 70368744177663L) >>> 10)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[13 + inPos] & 70368744177663L) >>> 18)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[13 + inPos] & 70368744177663L) >>> 26)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[13 + inPos] & 70368744177663L) >>> 34)) & 255);
out[80 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[13 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[14 + inPos] & 70368744177663L) << 4)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[14 + inPos] & 70368744177663L) >>> 4)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[14 + inPos] & 70368744177663L) >>> 12)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[14 + inPos] & 70368744177663L) >>> 20)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[14 + inPos] & 70368744177663L) >>> 28)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[14 + inPos] & 70368744177663L) >>> 36)) & 255);
out[86 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[14 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[15 + inPos] & 70368744177663L) << 2)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[15 + inPos] & 70368744177663L) >>> 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[15 + inPos] & 70368744177663L) >>> 14)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[15 + inPos] & 70368744177663L) >>> 22)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[15 + inPos] & 70368744177663L) >>> 30)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[15 + inPos] & 70368744177663L) >>> 38)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[16 + inPos] & 70368744177663L))) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[16 + inPos] & 70368744177663L) >>> 8)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[16 + inPos] & 70368744177663L) >>> 16)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[16 + inPos] & 70368744177663L) >>> 24)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[16 + inPos] & 70368744177663L) >>> 32)) & 255);
out[97 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[16 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[17 + inPos] & 70368744177663L) << 6)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[17 + inPos] & 70368744177663L) >>> 2)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[17 + inPos] & 70368744177663L) >>> 10)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[17 + inPos] & 70368744177663L) >>> 18)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[17 + inPos] & 70368744177663L) >>> 26)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[17 + inPos] & 70368744177663L) >>> 34)) & 255);
out[103 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[17 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[18 + inPos] & 70368744177663L) << 4)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[18 + inPos] & 70368744177663L) >>> 4)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[18 + inPos] & 70368744177663L) >>> 12)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[18 + inPos] & 70368744177663L) >>> 20)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[18 + inPos] & 70368744177663L) >>> 28)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[18 + inPos] & 70368744177663L) >>> 36)) & 255);
out[109 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[18 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[19 + inPos] & 70368744177663L) << 2)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[19 + inPos] & 70368744177663L) >>> 6)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[19 + inPos] & 70368744177663L) >>> 14)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[19 + inPos] & 70368744177663L) >>> 22)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[19 + inPos] & 70368744177663L) >>> 30)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[19 + inPos] & 70368744177663L) >>> 38)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[20 + inPos] & 70368744177663L))) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[20 + inPos] & 70368744177663L) >>> 8)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[20 + inPos] & 70368744177663L) >>> 16)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[20 + inPos] & 70368744177663L) >>> 24)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[20 + inPos] & 70368744177663L) >>> 32)) & 255);
out[120 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[20 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[21 + inPos] & 70368744177663L) << 6)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[21 + inPos] & 70368744177663L) >>> 2)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[21 + inPos] & 70368744177663L) >>> 10)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[21 + inPos] & 70368744177663L) >>> 18)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[21 + inPos] & 70368744177663L) >>> 26)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[21 + inPos] & 70368744177663L) >>> 34)) & 255);
out[126 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[21 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[22 + inPos] & 70368744177663L) << 4)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[22 + inPos] & 70368744177663L) >>> 4)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[22 + inPos] & 70368744177663L) >>> 12)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[22 + inPos] & 70368744177663L) >>> 20)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[22 + inPos] & 70368744177663L) >>> 28)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[22 + inPos] & 70368744177663L) >>> 36)) & 255);
out[132 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[22 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[23 + inPos] & 70368744177663L) << 2)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[23 + inPos] & 70368744177663L) >>> 6)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[23 + inPos] & 70368744177663L) >>> 14)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[23 + inPos] & 70368744177663L) >>> 22)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[23 + inPos] & 70368744177663L) >>> 30)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[23 + inPos] & 70368744177663L) >>> 38)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[24 + inPos] & 70368744177663L))) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[24 + inPos] & 70368744177663L) >>> 8)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[24 + inPos] & 70368744177663L) >>> 16)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[24 + inPos] & 70368744177663L) >>> 24)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[24 + inPos] & 70368744177663L) >>> 32)) & 255);
out[143 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[24 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[25 + inPos] & 70368744177663L) << 6)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[25 + inPos] & 70368744177663L) >>> 2)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[25 + inPos] & 70368744177663L) >>> 10)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[25 + inPos] & 70368744177663L) >>> 18)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[25 + inPos] & 70368744177663L) >>> 26)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[25 + inPos] & 70368744177663L) >>> 34)) & 255);
out[149 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[25 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[26 + inPos] & 70368744177663L) << 4)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[26 + inPos] & 70368744177663L) >>> 4)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[26 + inPos] & 70368744177663L) >>> 12)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[26 + inPos] & 70368744177663L) >>> 20)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[26 + inPos] & 70368744177663L) >>> 28)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[26 + inPos] & 70368744177663L) >>> 36)) & 255);
out[155 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[26 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[27 + inPos] & 70368744177663L) << 2)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[27 + inPos] & 70368744177663L) >>> 6)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[27 + inPos] & 70368744177663L) >>> 14)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[27 + inPos] & 70368744177663L) >>> 22)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[27 + inPos] & 70368744177663L) >>> 30)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[27 + inPos] & 70368744177663L) >>> 38)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______________________________________76543210]
((in[28 + inPos] & 70368744177663L))) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [______________________________54321098________]
((in[28 + inPos] & 70368744177663L) >>> 8)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________________32109876________________]
((in[28 + inPos] & 70368744177663L) >>> 16)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________10987654________________________]
((in[28 + inPos] & 70368744177663L) >>> 24)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______98765432________________________________]
((in[28 + inPos] & 70368744177663L) >>> 32)) & 255);
out[166 + outPos] = (byte)((
// [__543210]
// [543210________________________________________]
((in[28 + inPos] & 70368744177663L) >>> 40)
| // [76______]
// [____________________________________________10]
((in[29 + inPos] & 70368744177663L) << 6)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [____________________________________98765432__]
((in[29 + inPos] & 70368744177663L) >>> 2)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [____________________________76543210__________]
((in[29 + inPos] & 70368744177663L) >>> 10)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____________________54321098__________________]
((in[29 + inPos] & 70368744177663L) >>> 18)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [____________32109876__________________________]
((in[29 + inPos] & 70368744177663L) >>> 26)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [____10987654__________________________________]
((in[29 + inPos] & 70368744177663L) >>> 34)) & 255);
out[172 + outPos] = (byte)((
// [____3210]
// [5432__________________________________________]
((in[29 + inPos] & 70368744177663L) >>> 42)
| // [7654____]
// [__________________________________________3210]
((in[30 + inPos] & 70368744177663L) << 4)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [__________________________________10987654____]
((in[30 + inPos] & 70368744177663L) >>> 4)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [__________________________98765432____________]
((in[30 + inPos] & 70368744177663L) >>> 12)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [__________________76543210____________________]
((in[30 + inPos] & 70368744177663L) >>> 20)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [__________54321098____________________________]
((in[30 + inPos] & 70368744177663L) >>> 28)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [__32109876____________________________________]
((in[30 + inPos] & 70368744177663L) >>> 36)) & 255);
out[178 + outPos] = (byte)((
// [______10]
// [54____________________________________________]
((in[30 + inPos] & 70368744177663L) >>> 44)
| // [765432__]
// [________________________________________543210]
((in[31 + inPos] & 70368744177663L) << 2)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________________________32109876______]
((in[31 + inPos] & 70368744177663L) >>> 6)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________________________10987654______________]
((in[31 + inPos] & 70368744177663L) >>> 14)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [________________98765432______________________]
((in[31 + inPos] & 70368744177663L) >>> 22)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________76543210______________________________]
((in[31 + inPos] & 70368744177663L) >>> 30)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [54321098______________________________________]
((in[31 + inPos] & 70368744177663L) >>> 38)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 70368744177663L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[ 5 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[ 6 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[ 7 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[ 8 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[ 9 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[10 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[11 + inPos]) << 42) & 70368744177663L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[11 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[12 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[13 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[14 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[15 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[16 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[17 + inPos]) << 44) & 70368744177663L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[17 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[18 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[19 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[20 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[21 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[22 + inPos]) << 38) & 70368744177663L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[23 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[24 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[25 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[26 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[27 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[28 + inPos]) << 40) & 70368744177663L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[28 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[29 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[30 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[31 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[32 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[33 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[34 + inPos]) << 42) & 70368744177663L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[34 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[35 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[36 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[37 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[38 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[39 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[40 + inPos]) << 44) & 70368744177663L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[40 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[41 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[42 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[43 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[44 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[45 + inPos]) << 38) & 70368744177663L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 70368744177663L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get( 5 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get( 6 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get( 7 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get( 8 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get( 9 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(10 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(11 + inPos)) << 42) & 70368744177663L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(11 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(12 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(13 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(14 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(15 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(16 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(17 + inPos)) << 44) & 70368744177663L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(17 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(18 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(19 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(20 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(21 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(22 + inPos)) << 38) & 70368744177663L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(23 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(24 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(25 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(26 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(27 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(28 + inPos)) << 40) & 70368744177663L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(28 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(29 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(30 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(31 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(32 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(33 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(34 + inPos)) << 42) & 70368744177663L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(34 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(35 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(36 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(37 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(38 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(39 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(40 + inPos)) << 44) & 70368744177663L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(40 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(41 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(42 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(43 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(44 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(45 + inPos)) << 38) & 70368744177663L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 70368744177663L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[ 5 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[ 6 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[ 7 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[ 8 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[ 9 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[10 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[11 + inPos]) << 42) & 70368744177663L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[11 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[12 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[13 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[14 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[15 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[16 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[17 + inPos]) << 44) & 70368744177663L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[17 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[18 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[19 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[20 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[21 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[22 + inPos]) << 38) & 70368744177663L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[23 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[24 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[25 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[26 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[27 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[28 + inPos]) << 40) & 70368744177663L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[28 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[29 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[30 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[31 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[32 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[33 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[34 + inPos]) << 42) & 70368744177663L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[34 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[35 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[36 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[37 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[38 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[39 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[40 + inPos]) << 44) & 70368744177663L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[40 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[41 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[42 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[43 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[44 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[45 + inPos]) << 38) & 70368744177663L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[46 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[47 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[48 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[49 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[50 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[51 + inPos]) << 40) & 70368744177663L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[51 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[52 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[53 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[54 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[55 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[56 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[57 + inPos]) << 42) & 70368744177663L);
out[10 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[57 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[58 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[59 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[60 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[61 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[62 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[63 + inPos]) << 44) & 70368744177663L);
out[11 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[63 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[64 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[65 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[66 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[67 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[68 + inPos]) << 38) & 70368744177663L);
out[12 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[69 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[70 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[71 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[72 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[73 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[74 + inPos]) << 40) & 70368744177663L);
out[13 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[74 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[75 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[76 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[77 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[78 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[79 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[80 + inPos]) << 42) & 70368744177663L);
out[14 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[80 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[81 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[82 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[83 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[84 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[85 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[86 + inPos]) << 44) & 70368744177663L);
out[15 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[86 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[87 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[88 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[89 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[90 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[91 + inPos]) << 38) & 70368744177663L);
out[16 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[92 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[93 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[94 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[95 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[96 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[97 + inPos]) << 40) & 70368744177663L);
out[17 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[97 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[98 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[99 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[100 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[101 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[102 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[103 + inPos]) << 42) & 70368744177663L);
out[18 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[103 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[104 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[105 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[106 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[107 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[108 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[109 + inPos]) << 44) & 70368744177663L);
out[19 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[109 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[110 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[111 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[112 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[113 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[114 + inPos]) << 38) & 70368744177663L);
out[20 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[115 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[116 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[117 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[118 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[119 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[120 + inPos]) << 40) & 70368744177663L);
out[21 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[120 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[121 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[122 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[123 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[124 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[125 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[126 + inPos]) << 42) & 70368744177663L);
out[22 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[126 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[127 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[128 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[129 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[130 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[131 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[132 + inPos]) << 44) & 70368744177663L);
out[23 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[132 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[133 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[134 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[135 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[136 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[137 + inPos]) << 38) & 70368744177663L);
out[24 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[138 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[139 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[140 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[141 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[142 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[143 + inPos]) << 40) & 70368744177663L);
out[25 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[143 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[144 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[145 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[146 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[147 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[148 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[149 + inPos]) << 42) & 70368744177663L);
out[26 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[149 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[150 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[151 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[152 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[153 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[154 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[155 + inPos]) << 44) & 70368744177663L);
out[27 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[155 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[156 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[157 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[158 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[159 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[160 + inPos]) << 38) & 70368744177663L);
out[28 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in[161 + inPos]) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in[162 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in[163 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in[164 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in[165 + inPos]) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in[166 + inPos]) << 40) & 70368744177663L);
out[29 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in[166 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in[167 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in[168 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in[169 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in[170 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in[171 + inPos]) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in[172 + inPos]) << 42) & 70368744177663L);
out[30 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in[172 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in[173 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in[174 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in[175 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in[176 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in[177 + inPos]) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in[178 + inPos]) << 44) & 70368744177663L);
out[31 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in[178 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in[179 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in[180 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in[181 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in[182 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in[183 + inPos]) << 38) & 70368744177663L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 70368744177663L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get( 5 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get( 6 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get( 7 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get( 8 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get( 9 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(10 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(11 + inPos)) << 42) & 70368744177663L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(11 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(12 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(13 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(14 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(15 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(16 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(17 + inPos)) << 44) & 70368744177663L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(17 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(18 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(19 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(20 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(21 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(22 + inPos)) << 38) & 70368744177663L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(23 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(24 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(25 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(26 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(27 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(28 + inPos)) << 40) & 70368744177663L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(28 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(29 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(30 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(31 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(32 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(33 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(34 + inPos)) << 42) & 70368744177663L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(34 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(35 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(36 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(37 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(38 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(39 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(40 + inPos)) << 44) & 70368744177663L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(40 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(41 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(42 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(43 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(44 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(45 + inPos)) << 38) & 70368744177663L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(46 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(47 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(48 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(49 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(50 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(51 + inPos)) << 40) & 70368744177663L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(51 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(52 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(53 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(54 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(55 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(56 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(57 + inPos)) << 42) & 70368744177663L);
out[10 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(57 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(58 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(59 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(60 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(61 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(62 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(63 + inPos)) << 44) & 70368744177663L);
out[11 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(63 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(64 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(65 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(66 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(67 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(68 + inPos)) << 38) & 70368744177663L);
out[12 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(69 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(70 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(71 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(72 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(73 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(74 + inPos)) << 40) & 70368744177663L);
out[13 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(74 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(75 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(76 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(77 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(78 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(79 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(80 + inPos)) << 42) & 70368744177663L);
out[14 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(80 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(81 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(82 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(83 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(84 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(85 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(86 + inPos)) << 44) & 70368744177663L);
out[15 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(86 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(87 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(88 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(89 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(90 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(91 + inPos)) << 38) & 70368744177663L);
out[16 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(92 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(93 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(94 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(95 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(96 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(97 + inPos)) << 40) & 70368744177663L);
out[17 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(97 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(98 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(99 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(100 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(101 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(102 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(103 + inPos)) << 42) & 70368744177663L);
out[18 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(103 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(104 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(105 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(106 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(107 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(108 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(109 + inPos)) << 44) & 70368744177663L);
out[19 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(109 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(110 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(111 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(112 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(113 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(114 + inPos)) << 38) & 70368744177663L);
out[20 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(115 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(116 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(117 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(118 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(119 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(120 + inPos)) << 40) & 70368744177663L);
out[21 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(120 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(121 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(122 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(123 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(124 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(125 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(126 + inPos)) << 42) & 70368744177663L);
out[22 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(126 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(127 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(128 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(129 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(130 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(131 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(132 + inPos)) << 44) & 70368744177663L);
out[23 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(132 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(133 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(134 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(135 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(136 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(137 + inPos)) << 38) & 70368744177663L);
out[24 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(138 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(139 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(140 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(141 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(142 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(143 + inPos)) << 40) & 70368744177663L);
out[25 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(143 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(144 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(145 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(146 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(147 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(148 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(149 + inPos)) << 42) & 70368744177663L);
out[26 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(149 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(150 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(151 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(152 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(153 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(154 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(155 + inPos)) << 44) & 70368744177663L);
out[27 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(155 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(156 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(157 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(158 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(159 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(160 + inPos)) << 38) & 70368744177663L);
out[28 + outPos] =
// [76543210]
// [______________________________________76543210]
((((long)in.get(161 + inPos)) ) & 255L)
| // [76543210]
// [______________________________54321098________]
((((long)in.get(162 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________32109876________________]
((((long)in.get(163 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________10987654________________________]
((((long)in.get(164 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______98765432________________________________]
((((long)in.get(165 + inPos)) << 32) & 1099511627775L)
| // [__543210]
// [543210________________________________________]
((((long)in.get(166 + inPos)) << 40) & 70368744177663L);
out[29 + outPos] =
// [76______]
// [____________________________________________10]
((((long)in.get(166 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________98765432__]
((((long)in.get(167 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________76543210__________]
((((long)in.get(168 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________54321098__________________]
((((long)in.get(169 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________32109876__________________________]
((((long)in.get(170 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____10987654__________________________________]
((((long)in.get(171 + inPos)) << 34) & 4398046511103L)
| // [____3210]
// [5432__________________________________________]
((((long)in.get(172 + inPos)) << 42) & 70368744177663L);
out[30 + outPos] =
// [7654____]
// [__________________________________________3210]
((((long)in.get(172 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________10987654____]
((((long)in.get(173 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________98765432____________]
((((long)in.get(174 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________76543210____________________]
((((long)in.get(175 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________54321098____________________________]
((((long)in.get(176 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__32109876____________________________________]
((((long)in.get(177 + inPos)) << 36) & 17592186044415L)
| // [______10]
// [54____________________________________________]
((((long)in.get(178 + inPos)) << 44) & 70368744177663L);
out[31 + outPos] =
// [765432__]
// [________________________________________543210]
((((long)in.get(178 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________32109876______]
((((long)in.get(179 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________10987654______________]
((((long)in.get(180 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________98765432______________________]
((((long)in.get(181 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________76543210______________________________]
((((long)in.get(182 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [54321098______________________________________]
((((long)in.get(183 + inPos)) << 38) & 70368744177663L);
}
}
private static final class Packer47 extends BytePackerForLong {
private Packer47() {
super(47);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210]
((in[ 0 + inPos] & 140737488355327L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098________]
((in[ 0 + inPos] & 140737488355327L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________32109876________________]
((in[ 0 + inPos] & 140737488355327L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________10987654________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______98765432________________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_6543210]
// [6543210________________________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 40)
| // [7_______]
// [______________________________________________0]
((in[ 1 + inPos] & 140737488355327L) << 7)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321_]
((in[ 1 + inPos] & 140737488355327L) >>> 1)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________65432109_________]
((in[ 1 + inPos] & 140737488355327L) >>> 9)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________43210987_________________]
((in[ 1 + inPos] & 140737488355327L) >>> 17)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________21098765_________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 25)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______09876543_________________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 33)) & 255);
out[11 + outPos] = (byte)((
// [__543210]
// [654321_________________________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 41)
| // [76______]
// [_____________________________________________10]
((in[ 2 + inPos] & 140737488355327L) << 6)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432__]
((in[ 2 + inPos] & 140737488355327L) >>> 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210__________]
((in[ 2 + inPos] & 140737488355327L) >>> 10)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____________________54321098__________________]
((in[ 2 + inPos] & 140737488355327L) >>> 18)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____________32109876__________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 26)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____10987654__________________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 34)) & 255);
out[17 + outPos] = (byte)((
// [___43210]
// [65432__________________________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 42)
| // [765_____]
// [____________________________________________210]
((in[ 3 + inPos] & 140737488355327L) << 5)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543___]
((in[ 3 + inPos] & 140737488355327L) >>> 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________________87654321___________]
((in[ 3 + inPos] & 140737488355327L) >>> 11)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________65432109___________________]
((in[ 3 + inPos] & 140737488355327L) >>> 19)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________43210987___________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 27)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____21098765___________________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 35)) & 255);
out[23 + outPos] = (byte)((
// [____3210]
// [6543___________________________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 43)
| // [7654____]
// [___________________________________________3210]
((in[ 4 + inPos] & 140737488355327L) << 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654____]
((in[ 4 + inPos] & 140737488355327L) >>> 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [___________________________98765432____________]
((in[ 4 + inPos] & 140737488355327L) >>> 12)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [___________________76543210____________________]
((in[ 4 + inPos] & 140737488355327L) >>> 20)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [___________54321098____________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 28)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___32109876____________________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 36)) & 255);
out[29 + outPos] = (byte)((
// [_____210]
// [654____________________________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 44)
| // [76543___]
// [__________________________________________43210]
((in[ 5 + inPos] & 140737488355327L) << 3)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_____]
((in[ 5 + inPos] & 140737488355327L) >>> 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_____________]
((in[ 5 + inPos] & 140737488355327L) >>> 13)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________87654321_____________________]
((in[ 5 + inPos] & 140737488355327L) >>> 21)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________65432109_____________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 29)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__43210987_____________________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 37)) & 255);
out[35 + outPos] = (byte)((
// [______10]
// [65_____________________________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 45)
| // [765432__]
// [_________________________________________543210]
((in[ 6 + inPos] & 140737488355327L) << 2)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876______]
((in[ 6 + inPos] & 140737488355327L) >>> 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_________________________10987654______________]
((in[ 6 + inPos] & 140737488355327L) >>> 14)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_________________98765432______________________]
((in[ 6 + inPos] & 140737488355327L) >>> 22)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_________76543210______________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 30)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_54321098______________________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 38)) & 255);
out[41 + outPos] = (byte)((
// [_______0]
// [6______________________________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 46)
| // [7654321_]
// [________________________________________6543210]
((in[ 7 + inPos] & 140737488355327L) << 1)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_______]
((in[ 7 + inPos] & 140737488355327L) >>> 7)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________21098765_______________]
((in[ 7 + inPos] & 140737488355327L) >>> 15)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________09876543_______________________]
((in[ 7 + inPos] & 140737488355327L) >>> 23)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________87654321_______________________________]
((in[ 7 + inPos] & 140737488355327L) >>> 31)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [65432109_______________________________________]
((in[ 7 + inPos] & 140737488355327L) >>> 39)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210]
((in[ 0 + inPos] & 140737488355327L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098________]
((in[ 0 + inPos] & 140737488355327L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________32109876________________]
((in[ 0 + inPos] & 140737488355327L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________10987654________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______98765432________________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [_6543210]
// [6543210________________________________________]
((in[ 0 + inPos] & 140737488355327L) >>> 40)
| // [7_______]
// [______________________________________________0]
((in[ 1 + inPos] & 140737488355327L) << 7)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321_]
((in[ 1 + inPos] & 140737488355327L) >>> 1)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________65432109_________]
((in[ 1 + inPos] & 140737488355327L) >>> 9)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________43210987_________________]
((in[ 1 + inPos] & 140737488355327L) >>> 17)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________21098765_________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 25)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______09876543_________________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 33)) & 255);
out[11 + outPos] = (byte)((
// [__543210]
// [654321_________________________________________]
((in[ 1 + inPos] & 140737488355327L) >>> 41)
| // [76______]
// [_____________________________________________10]
((in[ 2 + inPos] & 140737488355327L) << 6)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432__]
((in[ 2 + inPos] & 140737488355327L) >>> 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210__________]
((in[ 2 + inPos] & 140737488355327L) >>> 10)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____________________54321098__________________]
((in[ 2 + inPos] & 140737488355327L) >>> 18)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____________32109876__________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 26)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____10987654__________________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 34)) & 255);
out[17 + outPos] = (byte)((
// [___43210]
// [65432__________________________________________]
((in[ 2 + inPos] & 140737488355327L) >>> 42)
| // [765_____]
// [____________________________________________210]
((in[ 3 + inPos] & 140737488355327L) << 5)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543___]
((in[ 3 + inPos] & 140737488355327L) >>> 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________________87654321___________]
((in[ 3 + inPos] & 140737488355327L) >>> 11)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________65432109___________________]
((in[ 3 + inPos] & 140737488355327L) >>> 19)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________43210987___________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 27)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____21098765___________________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 35)) & 255);
out[23 + outPos] = (byte)((
// [____3210]
// [6543___________________________________________]
((in[ 3 + inPos] & 140737488355327L) >>> 43)
| // [7654____]
// [___________________________________________3210]
((in[ 4 + inPos] & 140737488355327L) << 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654____]
((in[ 4 + inPos] & 140737488355327L) >>> 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [___________________________98765432____________]
((in[ 4 + inPos] & 140737488355327L) >>> 12)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [___________________76543210____________________]
((in[ 4 + inPos] & 140737488355327L) >>> 20)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [___________54321098____________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 28)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___32109876____________________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 36)) & 255);
out[29 + outPos] = (byte)((
// [_____210]
// [654____________________________________________]
((in[ 4 + inPos] & 140737488355327L) >>> 44)
| // [76543___]
// [__________________________________________43210]
((in[ 5 + inPos] & 140737488355327L) << 3)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_____]
((in[ 5 + inPos] & 140737488355327L) >>> 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_____________]
((in[ 5 + inPos] & 140737488355327L) >>> 13)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________87654321_____________________]
((in[ 5 + inPos] & 140737488355327L) >>> 21)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________65432109_____________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 29)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__43210987_____________________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 37)) & 255);
out[35 + outPos] = (byte)((
// [______10]
// [65_____________________________________________]
((in[ 5 + inPos] & 140737488355327L) >>> 45)
| // [765432__]
// [_________________________________________543210]
((in[ 6 + inPos] & 140737488355327L) << 2)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876______]
((in[ 6 + inPos] & 140737488355327L) >>> 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_________________________10987654______________]
((in[ 6 + inPos] & 140737488355327L) >>> 14)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_________________98765432______________________]
((in[ 6 + inPos] & 140737488355327L) >>> 22)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_________76543210______________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 30)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_54321098______________________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 38)) & 255);
out[41 + outPos] = (byte)((
// [_______0]
// [6______________________________________________]
((in[ 6 + inPos] & 140737488355327L) >>> 46)
| // [7654321_]
// [________________________________________6543210]
((in[ 7 + inPos] & 140737488355327L) << 1)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_______]
((in[ 7 + inPos] & 140737488355327L) >>> 7)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________21098765_______________]
((in[ 7 + inPos] & 140737488355327L) >>> 15)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________09876543_______________________]
((in[ 7 + inPos] & 140737488355327L) >>> 23)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________87654321_______________________________]
((in[ 7 + inPos] & 140737488355327L) >>> 31)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [65432109_______________________________________]
((in[ 7 + inPos] & 140737488355327L) >>> 39)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210]
((in[ 8 + inPos] & 140737488355327L))) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098________]
((in[ 8 + inPos] & 140737488355327L) >>> 8)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_______________________32109876________________]
((in[ 8 + inPos] & 140737488355327L) >>> 16)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_______________10987654________________________]
((in[ 8 + inPos] & 140737488355327L) >>> 24)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_______98765432________________________________]
((in[ 8 + inPos] & 140737488355327L) >>> 32)) & 255);
out[52 + outPos] = (byte)((
// [_6543210]
// [6543210________________________________________]
((in[ 8 + inPos] & 140737488355327L) >>> 40)
| // [7_______]
// [______________________________________________0]
((in[ 9 + inPos] & 140737488355327L) << 7)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321_]
((in[ 9 + inPos] & 140737488355327L) >>> 1)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [______________________________65432109_________]
((in[ 9 + inPos] & 140737488355327L) >>> 9)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [______________________43210987_________________]
((in[ 9 + inPos] & 140737488355327L) >>> 17)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______________21098765_________________________]
((in[ 9 + inPos] & 140737488355327L) >>> 25)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [______09876543_________________________________]
((in[ 9 + inPos] & 140737488355327L) >>> 33)) & 255);
out[58 + outPos] = (byte)((
// [__543210]
// [654321_________________________________________]
((in[ 9 + inPos] & 140737488355327L) >>> 41)
| // [76______]
// [_____________________________________________10]
((in[10 + inPos] & 140737488355327L) << 6)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432__]
((in[10 + inPos] & 140737488355327L) >>> 2)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210__________]
((in[10 + inPos] & 140737488355327L) >>> 10)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [_____________________54321098__________________]
((in[10 + inPos] & 140737488355327L) >>> 18)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_____________32109876__________________________]
((in[10 + inPos] & 140737488355327L) >>> 26)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____10987654__________________________________]
((in[10 + inPos] & 140737488355327L) >>> 34)) & 255);
out[64 + outPos] = (byte)((
// [___43210]
// [65432__________________________________________]
((in[10 + inPos] & 140737488355327L) >>> 42)
| // [765_____]
// [____________________________________________210]
((in[11 + inPos] & 140737488355327L) << 5)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543___]
((in[11 + inPos] & 140737488355327L) >>> 3)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____________________________87654321___________]
((in[11 + inPos] & 140737488355327L) >>> 11)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [____________________65432109___________________]
((in[11 + inPos] & 140737488355327L) >>> 19)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [____________43210987___________________________]
((in[11 + inPos] & 140737488355327L) >>> 27)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____21098765___________________________________]
((in[11 + inPos] & 140737488355327L) >>> 35)) & 255);
out[70 + outPos] = (byte)((
// [____3210]
// [6543___________________________________________]
((in[11 + inPos] & 140737488355327L) >>> 43)
| // [7654____]
// [___________________________________________3210]
((in[12 + inPos] & 140737488355327L) << 4)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654____]
((in[12 + inPos] & 140737488355327L) >>> 4)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [___________________________98765432____________]
((in[12 + inPos] & 140737488355327L) >>> 12)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [___________________76543210____________________]
((in[12 + inPos] & 140737488355327L) >>> 20)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [___________54321098____________________________]
((in[12 + inPos] & 140737488355327L) >>> 28)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [___32109876____________________________________]
((in[12 + inPos] & 140737488355327L) >>> 36)) & 255);
out[76 + outPos] = (byte)((
// [_____210]
// [654____________________________________________]
((in[12 + inPos] & 140737488355327L) >>> 44)
| // [76543___]
// [__________________________________________43210]
((in[13 + inPos] & 140737488355327L) << 3)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_____]
((in[13 + inPos] & 140737488355327L) >>> 5)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_____________]
((in[13 + inPos] & 140737488355327L) >>> 13)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________________87654321_____________________]
((in[13 + inPos] & 140737488355327L) >>> 21)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__________65432109_____________________________]
((in[13 + inPos] & 140737488355327L) >>> 29)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [__43210987_____________________________________]
((in[13 + inPos] & 140737488355327L) >>> 37)) & 255);
out[82 + outPos] = (byte)((
// [______10]
// [65_____________________________________________]
((in[13 + inPos] & 140737488355327L) >>> 45)
| // [765432__]
// [_________________________________________543210]
((in[14 + inPos] & 140737488355327L) << 2)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876______]
((in[14 + inPos] & 140737488355327L) >>> 6)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_________________________10987654______________]
((in[14 + inPos] & 140737488355327L) >>> 14)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_________________98765432______________________]
((in[14 + inPos] & 140737488355327L) >>> 22)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_________76543210______________________________]
((in[14 + inPos] & 140737488355327L) >>> 30)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_54321098______________________________________]
((in[14 + inPos] & 140737488355327L) >>> 38)) & 255);
out[88 + outPos] = (byte)((
// [_______0]
// [6______________________________________________]
((in[14 + inPos] & 140737488355327L) >>> 46)
| // [7654321_]
// [________________________________________6543210]
((in[15 + inPos] & 140737488355327L) << 1)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_______]
((in[15 + inPos] & 140737488355327L) >>> 7)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________________21098765_______________]
((in[15 + inPos] & 140737488355327L) >>> 15)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________09876543_______________________]
((in[15 + inPos] & 140737488355327L) >>> 23)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________87654321_______________________________]
((in[15 + inPos] & 140737488355327L) >>> 31)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [65432109_______________________________________]
((in[15 + inPos] & 140737488355327L) >>> 39)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210]
((in[16 + inPos] & 140737488355327L))) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098________]
((in[16 + inPos] & 140737488355327L) >>> 8)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [_______________________32109876________________]
((in[16 + inPos] & 140737488355327L) >>> 16)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [_______________10987654________________________]
((in[16 + inPos] & 140737488355327L) >>> 24)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_______98765432________________________________]
((in[16 + inPos] & 140737488355327L) >>> 32)) & 255);
out[99 + outPos] = (byte)((
// [_6543210]
// [6543210________________________________________]
((in[16 + inPos] & 140737488355327L) >>> 40)
| // [7_______]
// [______________________________________________0]
((in[17 + inPos] & 140737488355327L) << 7)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321_]
((in[17 + inPos] & 140737488355327L) >>> 1)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [______________________________65432109_________]
((in[17 + inPos] & 140737488355327L) >>> 9)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [______________________43210987_________________]
((in[17 + inPos] & 140737488355327L) >>> 17)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [______________21098765_________________________]
((in[17 + inPos] & 140737488355327L) >>> 25)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [______09876543_________________________________]
((in[17 + inPos] & 140737488355327L) >>> 33)) & 255);
out[105 + outPos] = (byte)((
// [__543210]
// [654321_________________________________________]
((in[17 + inPos] & 140737488355327L) >>> 41)
| // [76______]
// [_____________________________________________10]
((in[18 + inPos] & 140737488355327L) << 6)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432__]
((in[18 + inPos] & 140737488355327L) >>> 2)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210__________]
((in[18 + inPos] & 140737488355327L) >>> 10)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [_____________________54321098__________________]
((in[18 + inPos] & 140737488355327L) >>> 18)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [_____________32109876__________________________]
((in[18 + inPos] & 140737488355327L) >>> 26)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [_____10987654__________________________________]
((in[18 + inPos] & 140737488355327L) >>> 34)) & 255);
out[111 + outPos] = (byte)((
// [___43210]
// [65432__________________________________________]
((in[18 + inPos] & 140737488355327L) >>> 42)
| // [765_____]
// [____________________________________________210]
((in[19 + inPos] & 140737488355327L) << 5)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543___]
((in[19 + inPos] & 140737488355327L) >>> 3)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [____________________________87654321___________]
((in[19 + inPos] & 140737488355327L) >>> 11)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [____________________65432109___________________]
((in[19 + inPos] & 140737488355327L) >>> 19)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [____________43210987___________________________]
((in[19 + inPos] & 140737488355327L) >>> 27)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [____21098765___________________________________]
((in[19 + inPos] & 140737488355327L) >>> 35)) & 255);
out[117 + outPos] = (byte)((
// [____3210]
// [6543___________________________________________]
((in[19 + inPos] & 140737488355327L) >>> 43)
| // [7654____]
// [___________________________________________3210]
((in[20 + inPos] & 140737488355327L) << 4)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654____]
((in[20 + inPos] & 140737488355327L) >>> 4)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [___________________________98765432____________]
((in[20 + inPos] & 140737488355327L) >>> 12)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [___________________76543210____________________]
((in[20 + inPos] & 140737488355327L) >>> 20)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [___________54321098____________________________]
((in[20 + inPos] & 140737488355327L) >>> 28)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [___32109876____________________________________]
((in[20 + inPos] & 140737488355327L) >>> 36)) & 255);
out[123 + outPos] = (byte)((
// [_____210]
// [654____________________________________________]
((in[20 + inPos] & 140737488355327L) >>> 44)
| // [76543___]
// [__________________________________________43210]
((in[21 + inPos] & 140737488355327L) << 3)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_____]
((in[21 + inPos] & 140737488355327L) >>> 5)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_____________]
((in[21 + inPos] & 140737488355327L) >>> 13)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________________87654321_____________________]
((in[21 + inPos] & 140737488355327L) >>> 21)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__________65432109_____________________________]
((in[21 + inPos] & 140737488355327L) >>> 29)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [__43210987_____________________________________]
((in[21 + inPos] & 140737488355327L) >>> 37)) & 255);
out[129 + outPos] = (byte)((
// [______10]
// [65_____________________________________________]
((in[21 + inPos] & 140737488355327L) >>> 45)
| // [765432__]
// [_________________________________________543210]
((in[22 + inPos] & 140737488355327L) << 2)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876______]
((in[22 + inPos] & 140737488355327L) >>> 6)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [_________________________10987654______________]
((in[22 + inPos] & 140737488355327L) >>> 14)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [_________________98765432______________________]
((in[22 + inPos] & 140737488355327L) >>> 22)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [_________76543210______________________________]
((in[22 + inPos] & 140737488355327L) >>> 30)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [_54321098______________________________________]
((in[22 + inPos] & 140737488355327L) >>> 38)) & 255);
out[135 + outPos] = (byte)((
// [_______0]
// [6______________________________________________]
((in[22 + inPos] & 140737488355327L) >>> 46)
| // [7654321_]
// [________________________________________6543210]
((in[23 + inPos] & 140737488355327L) << 1)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_______]
((in[23 + inPos] & 140737488355327L) >>> 7)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________________21098765_______________]
((in[23 + inPos] & 140737488355327L) >>> 15)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________09876543_______________________]
((in[23 + inPos] & 140737488355327L) >>> 23)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________87654321_______________________________]
((in[23 + inPos] & 140737488355327L) >>> 31)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [65432109_______________________________________]
((in[23 + inPos] & 140737488355327L) >>> 39)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210]
((in[24 + inPos] & 140737488355327L))) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098________]
((in[24 + inPos] & 140737488355327L) >>> 8)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_______________________32109876________________]
((in[24 + inPos] & 140737488355327L) >>> 16)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_______________10987654________________________]
((in[24 + inPos] & 140737488355327L) >>> 24)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [_______98765432________________________________]
((in[24 + inPos] & 140737488355327L) >>> 32)) & 255);
out[146 + outPos] = (byte)((
// [_6543210]
// [6543210________________________________________]
((in[24 + inPos] & 140737488355327L) >>> 40)
| // [7_______]
// [______________________________________________0]
((in[25 + inPos] & 140737488355327L) << 7)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321_]
((in[25 + inPos] & 140737488355327L) >>> 1)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [______________________________65432109_________]
((in[25 + inPos] & 140737488355327L) >>> 9)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [______________________43210987_________________]
((in[25 + inPos] & 140737488355327L) >>> 17)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [______________21098765_________________________]
((in[25 + inPos] & 140737488355327L) >>> 25)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [______09876543_________________________________]
((in[25 + inPos] & 140737488355327L) >>> 33)) & 255);
out[152 + outPos] = (byte)((
// [__543210]
// [654321_________________________________________]
((in[25 + inPos] & 140737488355327L) >>> 41)
| // [76______]
// [_____________________________________________10]
((in[26 + inPos] & 140737488355327L) << 6)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432__]
((in[26 + inPos] & 140737488355327L) >>> 2)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210__________]
((in[26 + inPos] & 140737488355327L) >>> 10)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [_____________________54321098__________________]
((in[26 + inPos] & 140737488355327L) >>> 18)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [_____________32109876__________________________]
((in[26 + inPos] & 140737488355327L) >>> 26)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [_____10987654__________________________________]
((in[26 + inPos] & 140737488355327L) >>> 34)) & 255);
out[158 + outPos] = (byte)((
// [___43210]
// [65432__________________________________________]
((in[26 + inPos] & 140737488355327L) >>> 42)
| // [765_____]
// [____________________________________________210]
((in[27 + inPos] & 140737488355327L) << 5)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543___]
((in[27 + inPos] & 140737488355327L) >>> 3)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [____________________________87654321___________]
((in[27 + inPos] & 140737488355327L) >>> 11)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [____________________65432109___________________]
((in[27 + inPos] & 140737488355327L) >>> 19)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [____________43210987___________________________]
((in[27 + inPos] & 140737488355327L) >>> 27)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [____21098765___________________________________]
((in[27 + inPos] & 140737488355327L) >>> 35)) & 255);
out[164 + outPos] = (byte)((
// [____3210]
// [6543___________________________________________]
((in[27 + inPos] & 140737488355327L) >>> 43)
| // [7654____]
// [___________________________________________3210]
((in[28 + inPos] & 140737488355327L) << 4)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654____]
((in[28 + inPos] & 140737488355327L) >>> 4)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [___________________________98765432____________]
((in[28 + inPos] & 140737488355327L) >>> 12)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [___________________76543210____________________]
((in[28 + inPos] & 140737488355327L) >>> 20)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [___________54321098____________________________]
((in[28 + inPos] & 140737488355327L) >>> 28)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [___32109876____________________________________]
((in[28 + inPos] & 140737488355327L) >>> 36)) & 255);
out[170 + outPos] = (byte)((
// [_____210]
// [654____________________________________________]
((in[28 + inPos] & 140737488355327L) >>> 44)
| // [76543___]
// [__________________________________________43210]
((in[29 + inPos] & 140737488355327L) << 3)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_____]
((in[29 + inPos] & 140737488355327L) >>> 5)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_____________]
((in[29 + inPos] & 140737488355327L) >>> 13)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [__________________87654321_____________________]
((in[29 + inPos] & 140737488355327L) >>> 21)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [__________65432109_____________________________]
((in[29 + inPos] & 140737488355327L) >>> 29)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [__43210987_____________________________________]
((in[29 + inPos] & 140737488355327L) >>> 37)) & 255);
out[176 + outPos] = (byte)((
// [______10]
// [65_____________________________________________]
((in[29 + inPos] & 140737488355327L) >>> 45)
| // [765432__]
// [_________________________________________543210]
((in[30 + inPos] & 140737488355327L) << 2)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876______]
((in[30 + inPos] & 140737488355327L) >>> 6)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [_________________________10987654______________]
((in[30 + inPos] & 140737488355327L) >>> 14)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [_________________98765432______________________]
((in[30 + inPos] & 140737488355327L) >>> 22)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [_________76543210______________________________]
((in[30 + inPos] & 140737488355327L) >>> 30)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [_54321098______________________________________]
((in[30 + inPos] & 140737488355327L) >>> 38)) & 255);
out[182 + outPos] = (byte)((
// [_______0]
// [6______________________________________________]
((in[30 + inPos] & 140737488355327L) >>> 46)
| // [7654321_]
// [________________________________________6543210]
((in[31 + inPos] & 140737488355327L) << 1)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_______]
((in[31 + inPos] & 140737488355327L) >>> 7)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________________________21098765_______________]
((in[31 + inPos] & 140737488355327L) >>> 15)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [________________09876543_______________________]
((in[31 + inPos] & 140737488355327L) >>> 23)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________87654321_______________________________]
((in[31 + inPos] & 140737488355327L) >>> 31)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [65432109_______________________________________]
((in[31 + inPos] & 140737488355327L) >>> 39)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 140737488355327L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in[ 5 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in[ 6 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in[ 7 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in[ 8 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in[ 9 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in[10 + inPos]) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in[11 + inPos]) << 41) & 140737488355327L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in[11 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in[12 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in[13 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in[14 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in[15 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in[16 + inPos]) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in[17 + inPos]) << 42) & 140737488355327L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in[17 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in[18 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in[19 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in[20 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in[21 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in[22 + inPos]) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in[23 + inPos]) << 43) & 140737488355327L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in[23 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in[24 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in[25 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in[26 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in[27 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in[28 + inPos]) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in[29 + inPos]) << 44) & 140737488355327L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in[29 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in[30 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in[31 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in[32 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in[33 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in[34 + inPos]) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in[35 + inPos]) << 45) & 140737488355327L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in[35 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in[36 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in[37 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in[38 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in[39 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in[40 + inPos]) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in[41 + inPos]) << 46) & 140737488355327L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in[41 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in[42 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in[43 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in[44 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in[45 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in[46 + inPos]) << 39) & 140737488355327L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 140737488355327L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in.get( 5 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in.get( 6 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in.get( 7 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in.get( 8 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in.get( 9 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in.get(10 + inPos)) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in.get(11 + inPos)) << 41) & 140737488355327L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in.get(11 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in.get(12 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in.get(13 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in.get(14 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in.get(15 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in.get(16 + inPos)) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in.get(17 + inPos)) << 42) & 140737488355327L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in.get(17 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in.get(18 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in.get(19 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in.get(20 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in.get(21 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in.get(22 + inPos)) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in.get(23 + inPos)) << 43) & 140737488355327L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in.get(23 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in.get(24 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in.get(25 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in.get(26 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in.get(27 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in.get(28 + inPos)) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in.get(29 + inPos)) << 44) & 140737488355327L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in.get(29 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in.get(30 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in.get(31 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in.get(32 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in.get(33 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in.get(34 + inPos)) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in.get(35 + inPos)) << 45) & 140737488355327L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in.get(35 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in.get(36 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in.get(37 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in.get(38 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in.get(39 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in.get(40 + inPos)) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in.get(41 + inPos)) << 46) & 140737488355327L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in.get(41 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in.get(42 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in.get(43 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in.get(44 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in.get(45 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in.get(46 + inPos)) << 39) & 140737488355327L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 140737488355327L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in[ 5 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in[ 6 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in[ 7 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in[ 8 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in[ 9 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in[10 + inPos]) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in[11 + inPos]) << 41) & 140737488355327L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in[11 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in[12 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in[13 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in[14 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in[15 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in[16 + inPos]) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in[17 + inPos]) << 42) & 140737488355327L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in[17 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in[18 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in[19 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in[20 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in[21 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in[22 + inPos]) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in[23 + inPos]) << 43) & 140737488355327L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in[23 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in[24 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in[25 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in[26 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in[27 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in[28 + inPos]) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in[29 + inPos]) << 44) & 140737488355327L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in[29 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in[30 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in[31 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in[32 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in[33 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in[34 + inPos]) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in[35 + inPos]) << 45) & 140737488355327L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in[35 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in[36 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in[37 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in[38 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in[39 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in[40 + inPos]) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in[41 + inPos]) << 46) & 140737488355327L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in[41 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in[42 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in[43 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in[44 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in[45 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in[46 + inPos]) << 39) & 140737488355327L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in[47 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in[48 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in[49 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in[50 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in[51 + inPos]) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in[52 + inPos]) << 40) & 140737488355327L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in[52 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in[53 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in[54 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in[55 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in[56 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in[57 + inPos]) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in[58 + inPos]) << 41) & 140737488355327L);
out[10 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in[58 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in[59 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in[60 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in[61 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in[62 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in[63 + inPos]) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in[64 + inPos]) << 42) & 140737488355327L);
out[11 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in[64 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in[65 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in[66 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in[67 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in[68 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in[69 + inPos]) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in[70 + inPos]) << 43) & 140737488355327L);
out[12 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in[70 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in[71 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in[72 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in[73 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in[74 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in[75 + inPos]) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in[76 + inPos]) << 44) & 140737488355327L);
out[13 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in[76 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in[77 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in[78 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in[79 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in[80 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in[81 + inPos]) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in[82 + inPos]) << 45) & 140737488355327L);
out[14 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in[82 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in[83 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in[84 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in[85 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in[86 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in[87 + inPos]) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in[88 + inPos]) << 46) & 140737488355327L);
out[15 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in[88 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in[89 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in[90 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in[91 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in[92 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in[93 + inPos]) << 39) & 140737488355327L);
out[16 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in[94 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in[95 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in[96 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in[97 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in[98 + inPos]) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in[99 + inPos]) << 40) & 140737488355327L);
out[17 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in[99 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in[100 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in[101 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in[102 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in[103 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in[104 + inPos]) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in[105 + inPos]) << 41) & 140737488355327L);
out[18 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in[105 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in[106 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in[107 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in[108 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in[109 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in[110 + inPos]) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in[111 + inPos]) << 42) & 140737488355327L);
out[19 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in[111 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in[112 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in[113 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in[114 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in[115 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in[116 + inPos]) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in[117 + inPos]) << 43) & 140737488355327L);
out[20 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in[117 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in[118 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in[119 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in[120 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in[121 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in[122 + inPos]) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in[123 + inPos]) << 44) & 140737488355327L);
out[21 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in[123 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in[124 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in[125 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in[126 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in[127 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in[128 + inPos]) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in[129 + inPos]) << 45) & 140737488355327L);
out[22 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in[129 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in[130 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in[131 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in[132 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in[133 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in[134 + inPos]) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in[135 + inPos]) << 46) & 140737488355327L);
out[23 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in[135 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in[136 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in[137 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in[138 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in[139 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in[140 + inPos]) << 39) & 140737488355327L);
out[24 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in[141 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in[142 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in[143 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in[144 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in[145 + inPos]) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in[146 + inPos]) << 40) & 140737488355327L);
out[25 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in[146 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in[147 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in[148 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in[149 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in[150 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in[151 + inPos]) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in[152 + inPos]) << 41) & 140737488355327L);
out[26 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in[152 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in[153 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in[154 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in[155 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in[156 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in[157 + inPos]) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in[158 + inPos]) << 42) & 140737488355327L);
out[27 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in[158 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in[159 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in[160 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in[161 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in[162 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in[163 + inPos]) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in[164 + inPos]) << 43) & 140737488355327L);
out[28 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in[164 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in[165 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in[166 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in[167 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in[168 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in[169 + inPos]) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in[170 + inPos]) << 44) & 140737488355327L);
out[29 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in[170 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in[171 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in[172 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in[173 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in[174 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in[175 + inPos]) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in[176 + inPos]) << 45) & 140737488355327L);
out[30 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in[176 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in[177 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in[178 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in[179 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in[180 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in[181 + inPos]) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in[182 + inPos]) << 46) & 140737488355327L);
out[31 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in[182 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in[183 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in[184 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in[185 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in[186 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in[187 + inPos]) << 39) & 140737488355327L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 140737488355327L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in.get( 5 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in.get( 6 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in.get( 7 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in.get( 8 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in.get( 9 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in.get(10 + inPos)) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in.get(11 + inPos)) << 41) & 140737488355327L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in.get(11 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in.get(12 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in.get(13 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in.get(14 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in.get(15 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in.get(16 + inPos)) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in.get(17 + inPos)) << 42) & 140737488355327L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in.get(17 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in.get(18 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in.get(19 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in.get(20 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in.get(21 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in.get(22 + inPos)) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in.get(23 + inPos)) << 43) & 140737488355327L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in.get(23 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in.get(24 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in.get(25 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in.get(26 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in.get(27 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in.get(28 + inPos)) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in.get(29 + inPos)) << 44) & 140737488355327L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in.get(29 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in.get(30 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in.get(31 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in.get(32 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in.get(33 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in.get(34 + inPos)) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in.get(35 + inPos)) << 45) & 140737488355327L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in.get(35 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in.get(36 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in.get(37 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in.get(38 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in.get(39 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in.get(40 + inPos)) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in.get(41 + inPos)) << 46) & 140737488355327L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in.get(41 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in.get(42 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in.get(43 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in.get(44 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in.get(45 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in.get(46 + inPos)) << 39) & 140737488355327L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in.get(47 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in.get(48 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in.get(49 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in.get(50 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in.get(51 + inPos)) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in.get(52 + inPos)) << 40) & 140737488355327L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in.get(52 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in.get(53 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in.get(54 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in.get(55 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in.get(56 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in.get(57 + inPos)) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in.get(58 + inPos)) << 41) & 140737488355327L);
out[10 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in.get(58 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in.get(59 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in.get(60 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in.get(61 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in.get(62 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in.get(63 + inPos)) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in.get(64 + inPos)) << 42) & 140737488355327L);
out[11 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in.get(64 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in.get(65 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in.get(66 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in.get(67 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in.get(68 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in.get(69 + inPos)) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in.get(70 + inPos)) << 43) & 140737488355327L);
out[12 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in.get(70 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in.get(71 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in.get(72 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in.get(73 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in.get(74 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in.get(75 + inPos)) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in.get(76 + inPos)) << 44) & 140737488355327L);
out[13 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in.get(76 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in.get(77 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in.get(78 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in.get(79 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in.get(80 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in.get(81 + inPos)) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in.get(82 + inPos)) << 45) & 140737488355327L);
out[14 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in.get(82 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in.get(83 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in.get(84 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in.get(85 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in.get(86 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in.get(87 + inPos)) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in.get(88 + inPos)) << 46) & 140737488355327L);
out[15 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in.get(88 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in.get(89 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in.get(90 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in.get(91 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in.get(92 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in.get(93 + inPos)) << 39) & 140737488355327L);
out[16 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in.get(94 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in.get(95 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in.get(96 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in.get(97 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in.get(98 + inPos)) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in.get(99 + inPos)) << 40) & 140737488355327L);
out[17 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in.get(99 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in.get(100 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in.get(101 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in.get(102 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in.get(103 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in.get(104 + inPos)) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in.get(105 + inPos)) << 41) & 140737488355327L);
out[18 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in.get(105 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in.get(106 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in.get(107 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in.get(108 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in.get(109 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in.get(110 + inPos)) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in.get(111 + inPos)) << 42) & 140737488355327L);
out[19 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in.get(111 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in.get(112 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in.get(113 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in.get(114 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in.get(115 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in.get(116 + inPos)) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in.get(117 + inPos)) << 43) & 140737488355327L);
out[20 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in.get(117 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in.get(118 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in.get(119 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in.get(120 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in.get(121 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in.get(122 + inPos)) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in.get(123 + inPos)) << 44) & 140737488355327L);
out[21 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in.get(123 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in.get(124 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in.get(125 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in.get(126 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in.get(127 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in.get(128 + inPos)) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in.get(129 + inPos)) << 45) & 140737488355327L);
out[22 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in.get(129 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in.get(130 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in.get(131 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in.get(132 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in.get(133 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in.get(134 + inPos)) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in.get(135 + inPos)) << 46) & 140737488355327L);
out[23 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in.get(135 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in.get(136 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in.get(137 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in.get(138 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in.get(139 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in.get(140 + inPos)) << 39) & 140737488355327L);
out[24 + outPos] =
// [76543210]
// [_______________________________________76543210]
((((long)in.get(141 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________54321098________]
((((long)in.get(142 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________32109876________________]
((((long)in.get(143 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________10987654________________________]
((((long)in.get(144 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______98765432________________________________]
((((long)in.get(145 + inPos)) << 32) & 1099511627775L)
| // [_6543210]
// [6543210________________________________________]
((((long)in.get(146 + inPos)) << 40) & 140737488355327L);
out[25 + outPos] =
// [7_______]
// [______________________________________________0]
((((long)in.get(146 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________87654321_]
((((long)in.get(147 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________65432109_________]
((((long)in.get(148 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________43210987_________________]
((((long)in.get(149 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________21098765_________________________]
((((long)in.get(150 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______09876543_________________________________]
((((long)in.get(151 + inPos)) << 33) & 2199023255551L)
| // [__543210]
// [654321_________________________________________]
((((long)in.get(152 + inPos)) << 41) & 140737488355327L);
out[26 + outPos] =
// [76______]
// [_____________________________________________10]
((((long)in.get(152 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________98765432__]
((((long)in.get(153 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________76543210__________]
((((long)in.get(154 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________54321098__________________]
((((long)in.get(155 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________32109876__________________________]
((((long)in.get(156 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____10987654__________________________________]
((((long)in.get(157 + inPos)) << 34) & 4398046511103L)
| // [___43210]
// [65432__________________________________________]
((((long)in.get(158 + inPos)) << 42) & 140737488355327L);
out[27 + outPos] =
// [765_____]
// [____________________________________________210]
((((long)in.get(158 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________09876543___]
((((long)in.get(159 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________87654321___________]
((((long)in.get(160 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________65432109___________________]
((((long)in.get(161 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________43210987___________________________]
((((long)in.get(162 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____21098765___________________________________]
((((long)in.get(163 + inPos)) << 35) & 8796093022207L)
| // [____3210]
// [6543___________________________________________]
((((long)in.get(164 + inPos)) << 43) & 140737488355327L);
out[28 + outPos] =
// [7654____]
// [___________________________________________3210]
((((long)in.get(164 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________10987654____]
((((long)in.get(165 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________98765432____________]
((((long)in.get(166 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________76543210____________________]
((((long)in.get(167 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________54321098____________________________]
((((long)in.get(168 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___32109876____________________________________]
((((long)in.get(169 + inPos)) << 36) & 17592186044415L)
| // [_____210]
// [654____________________________________________]
((((long)in.get(170 + inPos)) << 44) & 140737488355327L);
out[29 + outPos] =
// [76543___]
// [__________________________________________43210]
((((long)in.get(170 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________21098765_____]
((((long)in.get(171 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________09876543_____________]
((((long)in.get(172 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________87654321_____________________]
((((long)in.get(173 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________65432109_____________________________]
((((long)in.get(174 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__43210987_____________________________________]
((((long)in.get(175 + inPos)) << 37) & 35184372088831L)
| // [______10]
// [65_____________________________________________]
((((long)in.get(176 + inPos)) << 45) & 140737488355327L);
out[30 + outPos] =
// [765432__]
// [_________________________________________543210]
((((long)in.get(176 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________32109876______]
((((long)in.get(177 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________10987654______________]
((((long)in.get(178 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________98765432______________________]
((((long)in.get(179 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________76543210______________________________]
((((long)in.get(180 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_54321098______________________________________]
((((long)in.get(181 + inPos)) << 38) & 70368744177663L)
| // [_______0]
// [6______________________________________________]
((((long)in.get(182 + inPos)) << 46) & 140737488355327L);
out[31 + outPos] =
// [7654321_]
// [________________________________________6543210]
((((long)in.get(182 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________43210987_______]
((((long)in.get(183 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________21098765_______________]
((((long)in.get(184 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________09876543_______________________]
((((long)in.get(185 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________87654321_______________________________]
((((long)in.get(186 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [65432109_______________________________________]
((((long)in.get(187 + inPos)) << 39) & 140737488355327L);
}
}
private static final class Packer48 extends BytePackerForLong {
private Packer48() {
super(48);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 0 + inPos] & 281474976710655L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 0 + inPos] & 281474976710655L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 0 + inPos] & 281474976710655L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 1 + inPos] & 281474976710655L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 1 + inPos] & 281474976710655L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 1 + inPos] & 281474976710655L) >>> 16)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 24)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 32)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 40)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 2 + inPos] & 281474976710655L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 2 + inPos] & 281474976710655L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 2 + inPos] & 281474976710655L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 24)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 32)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 40)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 3 + inPos] & 281474976710655L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 3 + inPos] & 281474976710655L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 3 + inPos] & 281474976710655L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 24)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 32)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 40)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 4 + inPos] & 281474976710655L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 4 + inPos] & 281474976710655L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 4 + inPos] & 281474976710655L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 32)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 40)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 5 + inPos] & 281474976710655L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 5 + inPos] & 281474976710655L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 5 + inPos] & 281474976710655L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 40)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 6 + inPos] & 281474976710655L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 6 + inPos] & 281474976710655L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 6 + inPos] & 281474976710655L) >>> 16)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 24)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 32)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 40)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 7 + inPos] & 281474976710655L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 7 + inPos] & 281474976710655L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 7 + inPos] & 281474976710655L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 24)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 32)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 40)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 0 + inPos] & 281474976710655L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 0 + inPos] & 281474976710655L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 0 + inPos] & 281474976710655L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 0 + inPos] & 281474976710655L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 1 + inPos] & 281474976710655L))) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 1 + inPos] & 281474976710655L) >>> 8)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 1 + inPos] & 281474976710655L) >>> 16)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 24)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 32)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 1 + inPos] & 281474976710655L) >>> 40)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 2 + inPos] & 281474976710655L))) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 2 + inPos] & 281474976710655L) >>> 8)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 2 + inPos] & 281474976710655L) >>> 16)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 24)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 32)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 2 + inPos] & 281474976710655L) >>> 40)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 3 + inPos] & 281474976710655L))) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 3 + inPos] & 281474976710655L) >>> 8)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 3 + inPos] & 281474976710655L) >>> 16)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 24)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 32)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 3 + inPos] & 281474976710655L) >>> 40)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 4 + inPos] & 281474976710655L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 4 + inPos] & 281474976710655L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 4 + inPos] & 281474976710655L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 32)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 4 + inPos] & 281474976710655L) >>> 40)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 5 + inPos] & 281474976710655L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 5 + inPos] & 281474976710655L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 5 + inPos] & 281474976710655L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 5 + inPos] & 281474976710655L) >>> 40)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 6 + inPos] & 281474976710655L))) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 6 + inPos] & 281474976710655L) >>> 8)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 6 + inPos] & 281474976710655L) >>> 16)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 24)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 32)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 6 + inPos] & 281474976710655L) >>> 40)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 7 + inPos] & 281474976710655L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 7 + inPos] & 281474976710655L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 7 + inPos] & 281474976710655L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 24)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 32)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 7 + inPos] & 281474976710655L) >>> 40)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 8 + inPos] & 281474976710655L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 8 + inPos] & 281474976710655L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 8 + inPos] & 281474976710655L) >>> 16)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 8 + inPos] & 281474976710655L) >>> 24)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 8 + inPos] & 281474976710655L) >>> 32)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 8 + inPos] & 281474976710655L) >>> 40)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[ 9 + inPos] & 281474976710655L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[ 9 + inPos] & 281474976710655L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[ 9 + inPos] & 281474976710655L) >>> 16)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[ 9 + inPos] & 281474976710655L) >>> 24)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[ 9 + inPos] & 281474976710655L) >>> 32)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[ 9 + inPos] & 281474976710655L) >>> 40)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[10 + inPos] & 281474976710655L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[10 + inPos] & 281474976710655L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[10 + inPos] & 281474976710655L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[10 + inPos] & 281474976710655L) >>> 24)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[10 + inPos] & 281474976710655L) >>> 32)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[10 + inPos] & 281474976710655L) >>> 40)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[11 + inPos] & 281474976710655L))) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[11 + inPos] & 281474976710655L) >>> 8)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[11 + inPos] & 281474976710655L) >>> 16)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[11 + inPos] & 281474976710655L) >>> 24)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[11 + inPos] & 281474976710655L) >>> 32)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[11 + inPos] & 281474976710655L) >>> 40)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[12 + inPos] & 281474976710655L))) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[12 + inPos] & 281474976710655L) >>> 8)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[12 + inPos] & 281474976710655L) >>> 16)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[12 + inPos] & 281474976710655L) >>> 24)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[12 + inPos] & 281474976710655L) >>> 32)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[12 + inPos] & 281474976710655L) >>> 40)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[13 + inPos] & 281474976710655L))) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[13 + inPos] & 281474976710655L) >>> 8)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[13 + inPos] & 281474976710655L) >>> 16)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[13 + inPos] & 281474976710655L) >>> 24)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[13 + inPos] & 281474976710655L) >>> 32)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[13 + inPos] & 281474976710655L) >>> 40)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[14 + inPos] & 281474976710655L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[14 + inPos] & 281474976710655L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[14 + inPos] & 281474976710655L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[14 + inPos] & 281474976710655L) >>> 24)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[14 + inPos] & 281474976710655L) >>> 32)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[14 + inPos] & 281474976710655L) >>> 40)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[15 + inPos] & 281474976710655L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[15 + inPos] & 281474976710655L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[15 + inPos] & 281474976710655L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[15 + inPos] & 281474976710655L) >>> 24)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[15 + inPos] & 281474976710655L) >>> 32)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[15 + inPos] & 281474976710655L) >>> 40)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[16 + inPos] & 281474976710655L))) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[16 + inPos] & 281474976710655L) >>> 8)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[16 + inPos] & 281474976710655L) >>> 16)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[16 + inPos] & 281474976710655L) >>> 24)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[16 + inPos] & 281474976710655L) >>> 32)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[16 + inPos] & 281474976710655L) >>> 40)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[17 + inPos] & 281474976710655L))) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[17 + inPos] & 281474976710655L) >>> 8)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[17 + inPos] & 281474976710655L) >>> 16)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[17 + inPos] & 281474976710655L) >>> 24)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[17 + inPos] & 281474976710655L) >>> 32)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[17 + inPos] & 281474976710655L) >>> 40)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[18 + inPos] & 281474976710655L))) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[18 + inPos] & 281474976710655L) >>> 8)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[18 + inPos] & 281474976710655L) >>> 16)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[18 + inPos] & 281474976710655L) >>> 24)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[18 + inPos] & 281474976710655L) >>> 32)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[18 + inPos] & 281474976710655L) >>> 40)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[19 + inPos] & 281474976710655L))) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[19 + inPos] & 281474976710655L) >>> 8)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[19 + inPos] & 281474976710655L) >>> 16)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[19 + inPos] & 281474976710655L) >>> 24)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[19 + inPos] & 281474976710655L) >>> 32)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[19 + inPos] & 281474976710655L) >>> 40)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[20 + inPos] & 281474976710655L))) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[20 + inPos] & 281474976710655L) >>> 8)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[20 + inPos] & 281474976710655L) >>> 16)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[20 + inPos] & 281474976710655L) >>> 24)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[20 + inPos] & 281474976710655L) >>> 32)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[20 + inPos] & 281474976710655L) >>> 40)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[21 + inPos] & 281474976710655L))) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[21 + inPos] & 281474976710655L) >>> 8)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[21 + inPos] & 281474976710655L) >>> 16)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[21 + inPos] & 281474976710655L) >>> 24)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[21 + inPos] & 281474976710655L) >>> 32)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[21 + inPos] & 281474976710655L) >>> 40)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[22 + inPos] & 281474976710655L))) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[22 + inPos] & 281474976710655L) >>> 8)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[22 + inPos] & 281474976710655L) >>> 16)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[22 + inPos] & 281474976710655L) >>> 24)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[22 + inPos] & 281474976710655L) >>> 32)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[22 + inPos] & 281474976710655L) >>> 40)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[23 + inPos] & 281474976710655L))) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[23 + inPos] & 281474976710655L) >>> 8)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[23 + inPos] & 281474976710655L) >>> 16)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[23 + inPos] & 281474976710655L) >>> 24)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[23 + inPos] & 281474976710655L) >>> 32)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[23 + inPos] & 281474976710655L) >>> 40)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[24 + inPos] & 281474976710655L))) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[24 + inPos] & 281474976710655L) >>> 8)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[24 + inPos] & 281474976710655L) >>> 16)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[24 + inPos] & 281474976710655L) >>> 24)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[24 + inPos] & 281474976710655L) >>> 32)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[24 + inPos] & 281474976710655L) >>> 40)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[25 + inPos] & 281474976710655L))) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[25 + inPos] & 281474976710655L) >>> 8)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[25 + inPos] & 281474976710655L) >>> 16)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[25 + inPos] & 281474976710655L) >>> 24)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[25 + inPos] & 281474976710655L) >>> 32)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[25 + inPos] & 281474976710655L) >>> 40)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[26 + inPos] & 281474976710655L))) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[26 + inPos] & 281474976710655L) >>> 8)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[26 + inPos] & 281474976710655L) >>> 16)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[26 + inPos] & 281474976710655L) >>> 24)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[26 + inPos] & 281474976710655L) >>> 32)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[26 + inPos] & 281474976710655L) >>> 40)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[27 + inPos] & 281474976710655L))) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[27 + inPos] & 281474976710655L) >>> 8)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[27 + inPos] & 281474976710655L) >>> 16)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[27 + inPos] & 281474976710655L) >>> 24)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[27 + inPos] & 281474976710655L) >>> 32)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[27 + inPos] & 281474976710655L) >>> 40)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[28 + inPos] & 281474976710655L))) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[28 + inPos] & 281474976710655L) >>> 8)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[28 + inPos] & 281474976710655L) >>> 16)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[28 + inPos] & 281474976710655L) >>> 24)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[28 + inPos] & 281474976710655L) >>> 32)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[28 + inPos] & 281474976710655L) >>> 40)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[29 + inPos] & 281474976710655L))) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[29 + inPos] & 281474976710655L) >>> 8)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[29 + inPos] & 281474976710655L) >>> 16)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[29 + inPos] & 281474976710655L) >>> 24)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[29 + inPos] & 281474976710655L) >>> 32)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[29 + inPos] & 281474976710655L) >>> 40)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[30 + inPos] & 281474976710655L))) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[30 + inPos] & 281474976710655L) >>> 8)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[30 + inPos] & 281474976710655L) >>> 16)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[30 + inPos] & 281474976710655L) >>> 24)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[30 + inPos] & 281474976710655L) >>> 32)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[30 + inPos] & 281474976710655L) >>> 40)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210]
((in[31 + inPos] & 281474976710655L))) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [________________________________54321098________]
((in[31 + inPos] & 281474976710655L) >>> 8)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [________________________32109876________________]
((in[31 + inPos] & 281474976710655L) >>> 16)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [________________10987654________________________]
((in[31 + inPos] & 281474976710655L) >>> 24)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________98765432________________________________]
((in[31 + inPos] & 281474976710655L) >>> 32)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [76543210________________________________________]
((in[31 + inPos] & 281474976710655L) >>> 40)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[ 8 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[ 9 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[10 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[11 + inPos]) << 40) & 281474976710655L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[15 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[16 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[17 + inPos]) << 40) & 281474976710655L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[21 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[22 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[23 + inPos]) << 40) & 281474976710655L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[28 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[29 + inPos]) << 40) & 281474976710655L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[35 + inPos]) << 40) & 281474976710655L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[38 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[39 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[40 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[41 + inPos]) << 40) & 281474976710655L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[45 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[46 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[47 + inPos]) << 40) & 281474976710655L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get( 8 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get( 9 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(10 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(11 + inPos)) << 40) & 281474976710655L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(15 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(16 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(17 + inPos)) << 40) & 281474976710655L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(21 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(22 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(23 + inPos)) << 40) & 281474976710655L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(28 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(29 + inPos)) << 40) & 281474976710655L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(35 + inPos)) << 40) & 281474976710655L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(38 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(39 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(40 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(41 + inPos)) << 40) & 281474976710655L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(45 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(46 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(47 + inPos)) << 40) & 281474976710655L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[ 6 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[ 7 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[ 8 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[ 9 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[10 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[11 + inPos]) << 40) & 281474976710655L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[12 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[13 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[14 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[15 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[16 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[17 + inPos]) << 40) & 281474976710655L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[18 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[19 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[20 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[21 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[22 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[23 + inPos]) << 40) & 281474976710655L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[28 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[29 + inPos]) << 40) & 281474976710655L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[35 + inPos]) << 40) & 281474976710655L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[36 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[37 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[38 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[39 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[40 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[41 + inPos]) << 40) & 281474976710655L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[45 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[46 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[47 + inPos]) << 40) & 281474976710655L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[49 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[50 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[51 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[52 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[53 + inPos]) << 40) & 281474976710655L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[56 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[57 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[58 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[59 + inPos]) << 40) & 281474976710655L);
out[10 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[63 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[64 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[65 + inPos]) << 40) & 281474976710655L);
out[11 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[66 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[67 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[68 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[69 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[70 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[71 + inPos]) << 40) & 281474976710655L);
out[12 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[72 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[73 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[74 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[75 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[76 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[77 + inPos]) << 40) & 281474976710655L);
out[13 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[78 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[79 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[80 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[81 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[82 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[83 + inPos]) << 40) & 281474976710655L);
out[14 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[87 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[88 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[89 + inPos]) << 40) & 281474976710655L);
out[15 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[93 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[94 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[95 + inPos]) << 40) & 281474976710655L);
out[16 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[96 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[97 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[98 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[99 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[100 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[101 + inPos]) << 40) & 281474976710655L);
out[17 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[102 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[103 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[104 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[105 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[106 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[107 + inPos]) << 40) & 281474976710655L);
out[18 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[108 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[109 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[110 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[111 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[112 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[113 + inPos]) << 40) & 281474976710655L);
out[19 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[114 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[115 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[116 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[117 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[118 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[119 + inPos]) << 40) & 281474976710655L);
out[20 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[120 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[121 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[122 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[123 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[124 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[125 + inPos]) << 40) & 281474976710655L);
out[21 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[126 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[127 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[128 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[129 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[130 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[131 + inPos]) << 40) & 281474976710655L);
out[22 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[132 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[133 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[134 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[135 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[136 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[137 + inPos]) << 40) & 281474976710655L);
out[23 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[138 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[139 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[140 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[141 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[142 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[143 + inPos]) << 40) & 281474976710655L);
out[24 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[144 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[145 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[146 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[147 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[148 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[149 + inPos]) << 40) & 281474976710655L);
out[25 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[150 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[151 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[152 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[153 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[154 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[155 + inPos]) << 40) & 281474976710655L);
out[26 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[156 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[157 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[158 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[159 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[160 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[161 + inPos]) << 40) & 281474976710655L);
out[27 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[162 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[163 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[164 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[165 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[166 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[167 + inPos]) << 40) & 281474976710655L);
out[28 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[168 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[169 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[170 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[171 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[172 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[173 + inPos]) << 40) & 281474976710655L);
out[29 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[174 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[175 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[176 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[177 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[178 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[179 + inPos]) << 40) & 281474976710655L);
out[30 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[180 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[181 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[182 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[183 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[184 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[185 + inPos]) << 40) & 281474976710655L);
out[31 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in[186 + inPos]) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in[187 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in[188 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in[189 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in[190 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in[191 + inPos]) << 40) & 281474976710655L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get( 6 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get( 7 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get( 8 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get( 9 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(10 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(11 + inPos)) << 40) & 281474976710655L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(12 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(13 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(14 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(15 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(16 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(17 + inPos)) << 40) & 281474976710655L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(18 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(19 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(20 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(21 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(22 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(23 + inPos)) << 40) & 281474976710655L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(28 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(29 + inPos)) << 40) & 281474976710655L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(35 + inPos)) << 40) & 281474976710655L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(36 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(37 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(38 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(39 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(40 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(41 + inPos)) << 40) & 281474976710655L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(45 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(46 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(47 + inPos)) << 40) & 281474976710655L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(50 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(51 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(52 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(53 + inPos)) << 40) & 281474976710655L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(56 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(57 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(58 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(59 + inPos)) << 40) & 281474976710655L);
out[10 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(63 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(64 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(65 + inPos)) << 40) & 281474976710655L);
out[11 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(66 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(67 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(68 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(69 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(70 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(71 + inPos)) << 40) & 281474976710655L);
out[12 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(72 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(73 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(74 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(75 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(76 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(77 + inPos)) << 40) & 281474976710655L);
out[13 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(78 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(79 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(80 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(81 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(82 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(83 + inPos)) << 40) & 281474976710655L);
out[14 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(87 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(88 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(89 + inPos)) << 40) & 281474976710655L);
out[15 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(93 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(94 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(95 + inPos)) << 40) & 281474976710655L);
out[16 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(96 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(97 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(98 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(99 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(100 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(101 + inPos)) << 40) & 281474976710655L);
out[17 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(102 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(103 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(104 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(105 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(106 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(107 + inPos)) << 40) & 281474976710655L);
out[18 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(108 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(109 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(110 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(111 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(112 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(113 + inPos)) << 40) & 281474976710655L);
out[19 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(114 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(115 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(116 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(117 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(118 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(119 + inPos)) << 40) & 281474976710655L);
out[20 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(120 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(121 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(122 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(123 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(124 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(125 + inPos)) << 40) & 281474976710655L);
out[21 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(126 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(127 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(128 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(129 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(130 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(131 + inPos)) << 40) & 281474976710655L);
out[22 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(132 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(133 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(134 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(135 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(136 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(137 + inPos)) << 40) & 281474976710655L);
out[23 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(138 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(139 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(140 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(141 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(142 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(143 + inPos)) << 40) & 281474976710655L);
out[24 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(144 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(145 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(146 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(147 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(148 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(149 + inPos)) << 40) & 281474976710655L);
out[25 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(150 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(151 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(152 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(153 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(154 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(155 + inPos)) << 40) & 281474976710655L);
out[26 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(156 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(157 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(158 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(159 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(160 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(161 + inPos)) << 40) & 281474976710655L);
out[27 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(162 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(163 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(164 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(165 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(166 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(167 + inPos)) << 40) & 281474976710655L);
out[28 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(168 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(169 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(170 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(171 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(172 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(173 + inPos)) << 40) & 281474976710655L);
out[29 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(174 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(175 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(176 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(177 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(178 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(179 + inPos)) << 40) & 281474976710655L);
out[30 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(180 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(181 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(182 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(183 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(184 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(185 + inPos)) << 40) & 281474976710655L);
out[31 + outPos] =
// [76543210]
// [________________________________________76543210]
((((long)in.get(186 + inPos)) ) & 255L)
| // [76543210]
// [________________________________54321098________]
((((long)in.get(187 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________32109876________________]
((((long)in.get(188 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________10987654________________________]
((((long)in.get(189 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________98765432________________________________]
((((long)in.get(190 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [76543210________________________________________]
((((long)in.get(191 + inPos)) << 40) & 281474976710655L);
}
}
private static final class Packer49 extends BytePackerForLong {
private Packer49() {
super(49);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210]
((in[ 0 + inPos] & 562949953421311L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098________]
((in[ 0 + inPos] & 562949953421311L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________________32109876________________]
((in[ 0 + inPos] & 562949953421311L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________________10987654________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_________98765432________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_76543210________________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_______0]
// [8________________________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 48)
| // [7654321_]
// [__________________________________________6543210]
((in[ 1 + inPos] & 562949953421311L) << 1)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_______]
((in[ 1 + inPos] & 562949953421311L) >>> 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_______________]
((in[ 1 + inPos] & 562949953421311L) >>> 15)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________09876543_______________________]
((in[ 1 + inPos] & 562949953421311L) >>> 23)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________87654321_______________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 31)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__65432109_______________________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 39)) & 255);
out[12 + outPos] = (byte)((
// [______10]
// [87_______________________________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 47)
| // [765432__]
// [___________________________________________543210]
((in[ 2 + inPos] & 562949953421311L) << 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876______]
((in[ 2 + inPos] & 562949953421311L) >>> 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [___________________________10987654______________]
((in[ 2 + inPos] & 562949953421311L) >>> 14)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [___________________98765432______________________]
((in[ 2 + inPos] & 562949953421311L) >>> 22)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________76543210______________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 30)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___54321098______________________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 38)) & 255);
out[18 + outPos] = (byte)((
// [_____210]
// [876______________________________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 46)
| // [76543___]
// [____________________________________________43210]
((in[ 3 + inPos] & 562949953421311L) << 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_____]
((in[ 3 + inPos] & 562949953421311L) >>> 5)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_____________]
((in[ 3 + inPos] & 562949953421311L) >>> 13)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________87654321_____________________]
((in[ 3 + inPos] & 562949953421311L) >>> 21)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________65432109_____________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 29)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____43210987_____________________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 37)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [8765_____________________________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 45)
| // [7654____]
// [_____________________________________________3210]
((in[ 4 + inPos] & 562949953421311L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654____]
((in[ 4 + inPos] & 562949953421311L) >>> 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432____________]
((in[ 4 + inPos] & 562949953421311L) >>> 12)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_____________________76543210____________________]
((in[ 4 + inPos] & 562949953421311L) >>> 20)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_____________54321098____________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 28)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____32109876____________________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 36)) & 255);
out[30 + outPos] = (byte)((
// [___43210]
// [87654____________________________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 44)
| // [765_____]
// [______________________________________________210]
((in[ 5 + inPos] & 562949953421311L) << 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543___]
((in[ 5 + inPos] & 562949953421311L) >>> 3)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________87654321___________]
((in[ 5 + inPos] & 562949953421311L) >>> 11)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________65432109___________________]
((in[ 5 + inPos] & 562949953421311L) >>> 19)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________43210987___________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 27)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______21098765___________________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 35)) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [876543___________________________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 43)
| // [76______]
// [_______________________________________________10]
((in[ 6 + inPos] & 562949953421311L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432__]
((in[ 6 + inPos] & 562949953421311L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210__________]
((in[ 6 + inPos] & 562949953421311L) >>> 10)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_______________________54321098__________________]
((in[ 6 + inPos] & 562949953421311L) >>> 18)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_______________32109876__________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 26)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_______10987654__________________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 34)) & 255);
out[42 + outPos] = (byte)((
// [_6543210]
// [8765432__________________________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 42)
| // [7_______]
// [________________________________________________0]
((in[ 7 + inPos] & 562949953421311L) << 7)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321_]
((in[ 7 + inPos] & 562949953421311L) >>> 1)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________65432109_________]
((in[ 7 + inPos] & 562949953421311L) >>> 9)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________43210987_________________]
((in[ 7 + inPos] & 562949953421311L) >>> 17)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________21098765_________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 25)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________09876543_________________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 33)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [87654321_________________________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 41)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210]
((in[ 0 + inPos] & 562949953421311L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098________]
((in[ 0 + inPos] & 562949953421311L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________________32109876________________]
((in[ 0 + inPos] & 562949953421311L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________________10987654________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_________98765432________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_76543210________________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_______0]
// [8________________________________________________]
((in[ 0 + inPos] & 562949953421311L) >>> 48)
| // [7654321_]
// [__________________________________________6543210]
((in[ 1 + inPos] & 562949953421311L) << 1)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_______]
((in[ 1 + inPos] & 562949953421311L) >>> 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_______________]
((in[ 1 + inPos] & 562949953421311L) >>> 15)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________09876543_______________________]
((in[ 1 + inPos] & 562949953421311L) >>> 23)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________87654321_______________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 31)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__65432109_______________________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 39)) & 255);
out[12 + outPos] = (byte)((
// [______10]
// [87_______________________________________________]
((in[ 1 + inPos] & 562949953421311L) >>> 47)
| // [765432__]
// [___________________________________________543210]
((in[ 2 + inPos] & 562949953421311L) << 2)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876______]
((in[ 2 + inPos] & 562949953421311L) >>> 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [___________________________10987654______________]
((in[ 2 + inPos] & 562949953421311L) >>> 14)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [___________________98765432______________________]
((in[ 2 + inPos] & 562949953421311L) >>> 22)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________76543210______________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 30)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___54321098______________________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 38)) & 255);
out[18 + outPos] = (byte)((
// [_____210]
// [876______________________________________________]
((in[ 2 + inPos] & 562949953421311L) >>> 46)
| // [76543___]
// [____________________________________________43210]
((in[ 3 + inPos] & 562949953421311L) << 3)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_____]
((in[ 3 + inPos] & 562949953421311L) >>> 5)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_____________]
((in[ 3 + inPos] & 562949953421311L) >>> 13)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________87654321_____________________]
((in[ 3 + inPos] & 562949953421311L) >>> 21)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________65432109_____________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 29)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____43210987_____________________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 37)) & 255);
out[24 + outPos] = (byte)((
// [____3210]
// [8765_____________________________________________]
((in[ 3 + inPos] & 562949953421311L) >>> 45)
| // [7654____]
// [_____________________________________________3210]
((in[ 4 + inPos] & 562949953421311L) << 4)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654____]
((in[ 4 + inPos] & 562949953421311L) >>> 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432____________]
((in[ 4 + inPos] & 562949953421311L) >>> 12)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_____________________76543210____________________]
((in[ 4 + inPos] & 562949953421311L) >>> 20)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_____________54321098____________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 28)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____32109876____________________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 36)) & 255);
out[30 + outPos] = (byte)((
// [___43210]
// [87654____________________________________________]
((in[ 4 + inPos] & 562949953421311L) >>> 44)
| // [765_____]
// [______________________________________________210]
((in[ 5 + inPos] & 562949953421311L) << 5)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543___]
((in[ 5 + inPos] & 562949953421311L) >>> 3)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________87654321___________]
((in[ 5 + inPos] & 562949953421311L) >>> 11)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________65432109___________________]
((in[ 5 + inPos] & 562949953421311L) >>> 19)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________43210987___________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 27)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______21098765___________________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 35)) & 255);
out[36 + outPos] = (byte)((
// [__543210]
// [876543___________________________________________]
((in[ 5 + inPos] & 562949953421311L) >>> 43)
| // [76______]
// [_______________________________________________10]
((in[ 6 + inPos] & 562949953421311L) << 6)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432__]
((in[ 6 + inPos] & 562949953421311L) >>> 2)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210__________]
((in[ 6 + inPos] & 562949953421311L) >>> 10)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_______________________54321098__________________]
((in[ 6 + inPos] & 562949953421311L) >>> 18)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_______________32109876__________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 26)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_______10987654__________________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 34)) & 255);
out[42 + outPos] = (byte)((
// [_6543210]
// [8765432__________________________________________]
((in[ 6 + inPos] & 562949953421311L) >>> 42)
| // [7_______]
// [________________________________________________0]
((in[ 7 + inPos] & 562949953421311L) << 7)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321_]
((in[ 7 + inPos] & 562949953421311L) >>> 1)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________65432109_________]
((in[ 7 + inPos] & 562949953421311L) >>> 9)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________43210987_________________]
((in[ 7 + inPos] & 562949953421311L) >>> 17)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________21098765_________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 25)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________09876543_________________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 33)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [87654321_________________________________________]
((in[ 7 + inPos] & 562949953421311L) >>> 41)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210]
((in[ 8 + inPos] & 562949953421311L))) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098________]
((in[ 8 + inPos] & 562949953421311L) >>> 8)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_________________________32109876________________]
((in[ 8 + inPos] & 562949953421311L) >>> 16)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_________________10987654________________________]
((in[ 8 + inPos] & 562949953421311L) >>> 24)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_________98765432________________________________]
((in[ 8 + inPos] & 562949953421311L) >>> 32)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_76543210________________________________________]
((in[ 8 + inPos] & 562949953421311L) >>> 40)) & 255);
out[55 + outPos] = (byte)((
// [_______0]
// [8________________________________________________]
((in[ 8 + inPos] & 562949953421311L) >>> 48)
| // [7654321_]
// [__________________________________________6543210]
((in[ 9 + inPos] & 562949953421311L) << 1)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_______]
((in[ 9 + inPos] & 562949953421311L) >>> 7)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_______________]
((in[ 9 + inPos] & 562949953421311L) >>> 15)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [__________________09876543_______________________]
((in[ 9 + inPos] & 562949953421311L) >>> 23)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [__________87654321_______________________________]
((in[ 9 + inPos] & 562949953421311L) >>> 31)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [__65432109_______________________________________]
((in[ 9 + inPos] & 562949953421311L) >>> 39)) & 255);
out[61 + outPos] = (byte)((
// [______10]
// [87_______________________________________________]
((in[ 9 + inPos] & 562949953421311L) >>> 47)
| // [765432__]
// [___________________________________________543210]
((in[10 + inPos] & 562949953421311L) << 2)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876______]
((in[10 + inPos] & 562949953421311L) >>> 6)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [___________________________10987654______________]
((in[10 + inPos] & 562949953421311L) >>> 14)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [___________________98765432______________________]
((in[10 + inPos] & 562949953421311L) >>> 22)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [___________76543210______________________________]
((in[10 + inPos] & 562949953421311L) >>> 30)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [___54321098______________________________________]
((in[10 + inPos] & 562949953421311L) >>> 38)) & 255);
out[67 + outPos] = (byte)((
// [_____210]
// [876______________________________________________]
((in[10 + inPos] & 562949953421311L) >>> 46)
| // [76543___]
// [____________________________________________43210]
((in[11 + inPos] & 562949953421311L) << 3)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_____]
((in[11 + inPos] & 562949953421311L) >>> 5)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_____________]
((in[11 + inPos] & 562949953421311L) >>> 13)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________________87654321_____________________]
((in[11 + inPos] & 562949953421311L) >>> 21)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________65432109_____________________________]
((in[11 + inPos] & 562949953421311L) >>> 29)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____43210987_____________________________________]
((in[11 + inPos] & 562949953421311L) >>> 37)) & 255);
out[73 + outPos] = (byte)((
// [____3210]
// [8765_____________________________________________]
((in[11 + inPos] & 562949953421311L) >>> 45)
| // [7654____]
// [_____________________________________________3210]
((in[12 + inPos] & 562949953421311L) << 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654____]
((in[12 + inPos] & 562949953421311L) >>> 4)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432____________]
((in[12 + inPos] & 562949953421311L) >>> 12)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_____________________76543210____________________]
((in[12 + inPos] & 562949953421311L) >>> 20)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_____________54321098____________________________]
((in[12 + inPos] & 562949953421311L) >>> 28)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_____32109876____________________________________]
((in[12 + inPos] & 562949953421311L) >>> 36)) & 255);
out[79 + outPos] = (byte)((
// [___43210]
// [87654____________________________________________]
((in[12 + inPos] & 562949953421311L) >>> 44)
| // [765_____]
// [______________________________________________210]
((in[13 + inPos] & 562949953421311L) << 5)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543___]
((in[13 + inPos] & 562949953421311L) >>> 3)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [______________________________87654321___________]
((in[13 + inPos] & 562949953421311L) >>> 11)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [______________________65432109___________________]
((in[13 + inPos] & 562949953421311L) >>> 19)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [______________43210987___________________________]
((in[13 + inPos] & 562949953421311L) >>> 27)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [______21098765___________________________________]
((in[13 + inPos] & 562949953421311L) >>> 35)) & 255);
out[85 + outPos] = (byte)((
// [__543210]
// [876543___________________________________________]
((in[13 + inPos] & 562949953421311L) >>> 43)
| // [76______]
// [_______________________________________________10]
((in[14 + inPos] & 562949953421311L) << 6)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432__]
((in[14 + inPos] & 562949953421311L) >>> 2)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210__________]
((in[14 + inPos] & 562949953421311L) >>> 10)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_______________________54321098__________________]
((in[14 + inPos] & 562949953421311L) >>> 18)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_______________32109876__________________________]
((in[14 + inPos] & 562949953421311L) >>> 26)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_______10987654__________________________________]
((in[14 + inPos] & 562949953421311L) >>> 34)) & 255);
out[91 + outPos] = (byte)((
// [_6543210]
// [8765432__________________________________________]
((in[14 + inPos] & 562949953421311L) >>> 42)
| // [7_______]
// [________________________________________________0]
((in[15 + inPos] & 562949953421311L) << 7)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321_]
((in[15 + inPos] & 562949953421311L) >>> 1)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________________________65432109_________]
((in[15 + inPos] & 562949953421311L) >>> 9)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________________________43210987_________________]
((in[15 + inPos] & 562949953421311L) >>> 17)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________21098765_________________________]
((in[15 + inPos] & 562949953421311L) >>> 25)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________09876543_________________________________]
((in[15 + inPos] & 562949953421311L) >>> 33)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [87654321_________________________________________]
((in[15 + inPos] & 562949953421311L) >>> 41)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210]
((in[16 + inPos] & 562949953421311L))) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098________]
((in[16 + inPos] & 562949953421311L) >>> 8)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [_________________________32109876________________]
((in[16 + inPos] & 562949953421311L) >>> 16)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_________________10987654________________________]
((in[16 + inPos] & 562949953421311L) >>> 24)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_________98765432________________________________]
((in[16 + inPos] & 562949953421311L) >>> 32)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_76543210________________________________________]
((in[16 + inPos] & 562949953421311L) >>> 40)) & 255);
out[104 + outPos] = (byte)((
// [_______0]
// [8________________________________________________]
((in[16 + inPos] & 562949953421311L) >>> 48)
| // [7654321_]
// [__________________________________________6543210]
((in[17 + inPos] & 562949953421311L) << 1)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_______]
((in[17 + inPos] & 562949953421311L) >>> 7)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_______________]
((in[17 + inPos] & 562949953421311L) >>> 15)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [__________________09876543_______________________]
((in[17 + inPos] & 562949953421311L) >>> 23)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [__________87654321_______________________________]
((in[17 + inPos] & 562949953421311L) >>> 31)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [__65432109_______________________________________]
((in[17 + inPos] & 562949953421311L) >>> 39)) & 255);
out[110 + outPos] = (byte)((
// [______10]
// [87_______________________________________________]
((in[17 + inPos] & 562949953421311L) >>> 47)
| // [765432__]
// [___________________________________________543210]
((in[18 + inPos] & 562949953421311L) << 2)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876______]
((in[18 + inPos] & 562949953421311L) >>> 6)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [___________________________10987654______________]
((in[18 + inPos] & 562949953421311L) >>> 14)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [___________________98765432______________________]
((in[18 + inPos] & 562949953421311L) >>> 22)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [___________76543210______________________________]
((in[18 + inPos] & 562949953421311L) >>> 30)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [___54321098______________________________________]
((in[18 + inPos] & 562949953421311L) >>> 38)) & 255);
out[116 + outPos] = (byte)((
// [_____210]
// [876______________________________________________]
((in[18 + inPos] & 562949953421311L) >>> 46)
| // [76543___]
// [____________________________________________43210]
((in[19 + inPos] & 562949953421311L) << 3)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_____]
((in[19 + inPos] & 562949953421311L) >>> 5)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_____________]
((in[19 + inPos] & 562949953421311L) >>> 13)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________________87654321_____________________]
((in[19 + inPos] & 562949953421311L) >>> 21)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____________65432109_____________________________]
((in[19 + inPos] & 562949953421311L) >>> 29)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____43210987_____________________________________]
((in[19 + inPos] & 562949953421311L) >>> 37)) & 255);
out[122 + outPos] = (byte)((
// [____3210]
// [8765_____________________________________________]
((in[19 + inPos] & 562949953421311L) >>> 45)
| // [7654____]
// [_____________________________________________3210]
((in[20 + inPos] & 562949953421311L) << 4)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654____]
((in[20 + inPos] & 562949953421311L) >>> 4)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432____________]
((in[20 + inPos] & 562949953421311L) >>> 12)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_____________________76543210____________________]
((in[20 + inPos] & 562949953421311L) >>> 20)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_____________54321098____________________________]
((in[20 + inPos] & 562949953421311L) >>> 28)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_____32109876____________________________________]
((in[20 + inPos] & 562949953421311L) >>> 36)) & 255);
out[128 + outPos] = (byte)((
// [___43210]
// [87654____________________________________________]
((in[20 + inPos] & 562949953421311L) >>> 44)
| // [765_____]
// [______________________________________________210]
((in[21 + inPos] & 562949953421311L) << 5)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543___]
((in[21 + inPos] & 562949953421311L) >>> 3)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [______________________________87654321___________]
((in[21 + inPos] & 562949953421311L) >>> 11)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [______________________65432109___________________]
((in[21 + inPos] & 562949953421311L) >>> 19)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [______________43210987___________________________]
((in[21 + inPos] & 562949953421311L) >>> 27)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [______21098765___________________________________]
((in[21 + inPos] & 562949953421311L) >>> 35)) & 255);
out[134 + outPos] = (byte)((
// [__543210]
// [876543___________________________________________]
((in[21 + inPos] & 562949953421311L) >>> 43)
| // [76______]
// [_______________________________________________10]
((in[22 + inPos] & 562949953421311L) << 6)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432__]
((in[22 + inPos] & 562949953421311L) >>> 2)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210__________]
((in[22 + inPos] & 562949953421311L) >>> 10)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [_______________________54321098__________________]
((in[22 + inPos] & 562949953421311L) >>> 18)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [_______________32109876__________________________]
((in[22 + inPos] & 562949953421311L) >>> 26)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [_______10987654__________________________________]
((in[22 + inPos] & 562949953421311L) >>> 34)) & 255);
out[140 + outPos] = (byte)((
// [_6543210]
// [8765432__________________________________________]
((in[22 + inPos] & 562949953421311L) >>> 42)
| // [7_______]
// [________________________________________________0]
((in[23 + inPos] & 562949953421311L) << 7)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321_]
((in[23 + inPos] & 562949953421311L) >>> 1)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________________________________65432109_________]
((in[23 + inPos] & 562949953421311L) >>> 9)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________________________43210987_________________]
((in[23 + inPos] & 562949953421311L) >>> 17)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________21098765_________________________]
((in[23 + inPos] & 562949953421311L) >>> 25)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________09876543_________________________________]
((in[23 + inPos] & 562949953421311L) >>> 33)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [87654321_________________________________________]
((in[23 + inPos] & 562949953421311L) >>> 41)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210]
((in[24 + inPos] & 562949953421311L))) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098________]
((in[24 + inPos] & 562949953421311L) >>> 8)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [_________________________32109876________________]
((in[24 + inPos] & 562949953421311L) >>> 16)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [_________________10987654________________________]
((in[24 + inPos] & 562949953421311L) >>> 24)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [_________98765432________________________________]
((in[24 + inPos] & 562949953421311L) >>> 32)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [_76543210________________________________________]
((in[24 + inPos] & 562949953421311L) >>> 40)) & 255);
out[153 + outPos] = (byte)((
// [_______0]
// [8________________________________________________]
((in[24 + inPos] & 562949953421311L) >>> 48)
| // [7654321_]
// [__________________________________________6543210]
((in[25 + inPos] & 562949953421311L) << 1)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_______]
((in[25 + inPos] & 562949953421311L) >>> 7)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_______________]
((in[25 + inPos] & 562949953421311L) >>> 15)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [__________________09876543_______________________]
((in[25 + inPos] & 562949953421311L) >>> 23)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [__________87654321_______________________________]
((in[25 + inPos] & 562949953421311L) >>> 31)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [__65432109_______________________________________]
((in[25 + inPos] & 562949953421311L) >>> 39)) & 255);
out[159 + outPos] = (byte)((
// [______10]
// [87_______________________________________________]
((in[25 + inPos] & 562949953421311L) >>> 47)
| // [765432__]
// [___________________________________________543210]
((in[26 + inPos] & 562949953421311L) << 2)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876______]
((in[26 + inPos] & 562949953421311L) >>> 6)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [___________________________10987654______________]
((in[26 + inPos] & 562949953421311L) >>> 14)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [___________________98765432______________________]
((in[26 + inPos] & 562949953421311L) >>> 22)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [___________76543210______________________________]
((in[26 + inPos] & 562949953421311L) >>> 30)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [___54321098______________________________________]
((in[26 + inPos] & 562949953421311L) >>> 38)) & 255);
out[165 + outPos] = (byte)((
// [_____210]
// [876______________________________________________]
((in[26 + inPos] & 562949953421311L) >>> 46)
| // [76543___]
// [____________________________________________43210]
((in[27 + inPos] & 562949953421311L) << 3)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_____]
((in[27 + inPos] & 562949953421311L) >>> 5)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_____________]
((in[27 + inPos] & 562949953421311L) >>> 13)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [____________________87654321_____________________]
((in[27 + inPos] & 562949953421311L) >>> 21)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____________65432109_____________________________]
((in[27 + inPos] & 562949953421311L) >>> 29)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [____43210987_____________________________________]
((in[27 + inPos] & 562949953421311L) >>> 37)) & 255);
out[171 + outPos] = (byte)((
// [____3210]
// [8765_____________________________________________]
((in[27 + inPos] & 562949953421311L) >>> 45)
| // [7654____]
// [_____________________________________________3210]
((in[28 + inPos] & 562949953421311L) << 4)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654____]
((in[28 + inPos] & 562949953421311L) >>> 4)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432____________]
((in[28 + inPos] & 562949953421311L) >>> 12)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [_____________________76543210____________________]
((in[28 + inPos] & 562949953421311L) >>> 20)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [_____________54321098____________________________]
((in[28 + inPos] & 562949953421311L) >>> 28)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [_____32109876____________________________________]
((in[28 + inPos] & 562949953421311L) >>> 36)) & 255);
out[177 + outPos] = (byte)((
// [___43210]
// [87654____________________________________________]
((in[28 + inPos] & 562949953421311L) >>> 44)
| // [765_____]
// [______________________________________________210]
((in[29 + inPos] & 562949953421311L) << 5)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543___]
((in[29 + inPos] & 562949953421311L) >>> 3)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [______________________________87654321___________]
((in[29 + inPos] & 562949953421311L) >>> 11)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [______________________65432109___________________]
((in[29 + inPos] & 562949953421311L) >>> 19)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [______________43210987___________________________]
((in[29 + inPos] & 562949953421311L) >>> 27)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [______21098765___________________________________]
((in[29 + inPos] & 562949953421311L) >>> 35)) & 255);
out[183 + outPos] = (byte)((
// [__543210]
// [876543___________________________________________]
((in[29 + inPos] & 562949953421311L) >>> 43)
| // [76______]
// [_______________________________________________10]
((in[30 + inPos] & 562949953421311L) << 6)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432__]
((in[30 + inPos] & 562949953421311L) >>> 2)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210__________]
((in[30 + inPos] & 562949953421311L) >>> 10)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [_______________________54321098__________________]
((in[30 + inPos] & 562949953421311L) >>> 18)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [_______________32109876__________________________]
((in[30 + inPos] & 562949953421311L) >>> 26)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [_______10987654__________________________________]
((in[30 + inPos] & 562949953421311L) >>> 34)) & 255);
out[189 + outPos] = (byte)((
// [_6543210]
// [8765432__________________________________________]
((in[30 + inPos] & 562949953421311L) >>> 42)
| // [7_______]
// [________________________________________________0]
((in[31 + inPos] & 562949953421311L) << 7)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321_]
((in[31 + inPos] & 562949953421311L) >>> 1)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [________________________________65432109_________]
((in[31 + inPos] & 562949953421311L) >>> 9)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [________________________43210987_________________]
((in[31 + inPos] & 562949953421311L) >>> 17)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [________________21098765_________________________]
((in[31 + inPos] & 562949953421311L) >>> 25)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [________09876543_________________________________]
((in[31 + inPos] & 562949953421311L) >>> 33)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [87654321_________________________________________]
((in[31 + inPos] & 562949953421311L) >>> 41)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 562949953421311L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in[ 6 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in[ 7 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in[ 8 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in[ 9 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in[10 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in[11 + inPos]) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in[12 + inPos]) << 47) & 562949953421311L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in[12 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in[13 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in[14 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in[15 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in[16 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in[17 + inPos]) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in[18 + inPos]) << 46) & 562949953421311L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in[18 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in[19 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in[20 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in[21 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in[22 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in[23 + inPos]) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in[24 + inPos]) << 45) & 562949953421311L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in[25 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in[26 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in[27 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in[28 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in[29 + inPos]) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in[30 + inPos]) << 44) & 562949953421311L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in[30 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in[31 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in[32 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in[33 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in[34 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in[35 + inPos]) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in[36 + inPos]) << 43) & 562949953421311L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in[38 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in[39 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in[40 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in[41 + inPos]) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in[42 + inPos]) << 42) & 562949953421311L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in[42 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in[43 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in[44 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in[45 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in[46 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in[47 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in[48 + inPos]) << 41) & 562949953421311L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 562949953421311L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in.get( 6 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in.get( 7 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in.get( 8 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in.get( 9 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in.get(10 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in.get(11 + inPos)) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in.get(12 + inPos)) << 47) & 562949953421311L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in.get(12 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in.get(13 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in.get(14 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in.get(15 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in.get(16 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in.get(17 + inPos)) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in.get(18 + inPos)) << 46) & 562949953421311L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in.get(18 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in.get(19 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in.get(20 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in.get(21 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in.get(22 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in.get(23 + inPos)) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in.get(24 + inPos)) << 45) & 562949953421311L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in.get(25 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in.get(26 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in.get(27 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in.get(28 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in.get(29 + inPos)) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in.get(30 + inPos)) << 44) & 562949953421311L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in.get(30 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in.get(31 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in.get(32 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in.get(33 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in.get(34 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in.get(35 + inPos)) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in.get(36 + inPos)) << 43) & 562949953421311L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in.get(38 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in.get(39 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in.get(40 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in.get(41 + inPos)) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in.get(42 + inPos)) << 42) & 562949953421311L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in.get(42 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in.get(43 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in.get(44 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in.get(45 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in.get(46 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in.get(47 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in.get(48 + inPos)) << 41) & 562949953421311L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 562949953421311L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in[ 6 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in[ 7 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in[ 8 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in[ 9 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in[10 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in[11 + inPos]) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in[12 + inPos]) << 47) & 562949953421311L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in[12 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in[13 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in[14 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in[15 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in[16 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in[17 + inPos]) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in[18 + inPos]) << 46) & 562949953421311L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in[18 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in[19 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in[20 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in[21 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in[22 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in[23 + inPos]) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in[24 + inPos]) << 45) & 562949953421311L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in[24 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in[25 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in[26 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in[27 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in[28 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in[29 + inPos]) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in[30 + inPos]) << 44) & 562949953421311L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in[30 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in[31 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in[32 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in[33 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in[34 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in[35 + inPos]) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in[36 + inPos]) << 43) & 562949953421311L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in[36 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in[37 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in[38 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in[39 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in[40 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in[41 + inPos]) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in[42 + inPos]) << 42) & 562949953421311L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in[42 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in[43 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in[44 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in[45 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in[46 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in[47 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in[48 + inPos]) << 41) & 562949953421311L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in[49 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in[50 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in[51 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in[52 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in[53 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in[54 + inPos]) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in[55 + inPos]) << 48) & 562949953421311L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in[55 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in[56 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in[57 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in[58 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in[59 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in[60 + inPos]) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in[61 + inPos]) << 47) & 562949953421311L);
out[10 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in[61 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in[62 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in[63 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in[64 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in[65 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in[66 + inPos]) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in[67 + inPos]) << 46) & 562949953421311L);
out[11 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in[67 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in[68 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in[69 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in[70 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in[71 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in[72 + inPos]) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in[73 + inPos]) << 45) & 562949953421311L);
out[12 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in[73 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in[74 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in[75 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in[76 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in[77 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in[78 + inPos]) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in[79 + inPos]) << 44) & 562949953421311L);
out[13 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in[79 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in[80 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in[81 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in[82 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in[83 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in[84 + inPos]) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in[85 + inPos]) << 43) & 562949953421311L);
out[14 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in[85 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in[86 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in[87 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in[88 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in[89 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in[90 + inPos]) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in[91 + inPos]) << 42) & 562949953421311L);
out[15 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in[91 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in[92 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in[93 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in[94 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in[95 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in[96 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in[97 + inPos]) << 41) & 562949953421311L);
out[16 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in[98 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in[99 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in[100 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in[101 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in[102 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in[103 + inPos]) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in[104 + inPos]) << 48) & 562949953421311L);
out[17 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in[104 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in[105 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in[106 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in[107 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in[108 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in[109 + inPos]) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in[110 + inPos]) << 47) & 562949953421311L);
out[18 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in[110 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in[111 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in[112 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in[113 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in[114 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in[115 + inPos]) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in[116 + inPos]) << 46) & 562949953421311L);
out[19 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in[116 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in[117 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in[118 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in[119 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in[120 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in[121 + inPos]) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in[122 + inPos]) << 45) & 562949953421311L);
out[20 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in[122 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in[123 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in[124 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in[125 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in[126 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in[127 + inPos]) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in[128 + inPos]) << 44) & 562949953421311L);
out[21 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in[128 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in[129 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in[130 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in[131 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in[132 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in[133 + inPos]) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in[134 + inPos]) << 43) & 562949953421311L);
out[22 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in[134 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in[135 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in[136 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in[137 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in[138 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in[139 + inPos]) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in[140 + inPos]) << 42) & 562949953421311L);
out[23 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in[140 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in[141 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in[142 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in[143 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in[144 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in[145 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in[146 + inPos]) << 41) & 562949953421311L);
out[24 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in[147 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in[148 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in[149 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in[150 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in[151 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in[152 + inPos]) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in[153 + inPos]) << 48) & 562949953421311L);
out[25 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in[153 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in[154 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in[155 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in[156 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in[157 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in[158 + inPos]) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in[159 + inPos]) << 47) & 562949953421311L);
out[26 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in[159 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in[160 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in[161 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in[162 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in[163 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in[164 + inPos]) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in[165 + inPos]) << 46) & 562949953421311L);
out[27 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in[165 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in[166 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in[167 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in[168 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in[169 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in[170 + inPos]) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in[171 + inPos]) << 45) & 562949953421311L);
out[28 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in[171 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in[172 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in[173 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in[174 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in[175 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in[176 + inPos]) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in[177 + inPos]) << 44) & 562949953421311L);
out[29 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in[177 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in[178 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in[179 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in[180 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in[181 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in[182 + inPos]) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in[183 + inPos]) << 43) & 562949953421311L);
out[30 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in[183 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in[184 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in[185 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in[186 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in[187 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in[188 + inPos]) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in[189 + inPos]) << 42) & 562949953421311L);
out[31 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in[189 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in[190 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in[191 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in[192 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in[193 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in[194 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in[195 + inPos]) << 41) & 562949953421311L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 562949953421311L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in.get( 6 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in.get( 7 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in.get( 8 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in.get( 9 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in.get(10 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in.get(11 + inPos)) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in.get(12 + inPos)) << 47) & 562949953421311L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in.get(12 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in.get(13 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in.get(14 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in.get(15 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in.get(16 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in.get(17 + inPos)) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in.get(18 + inPos)) << 46) & 562949953421311L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in.get(18 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in.get(19 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in.get(20 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in.get(21 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in.get(22 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in.get(23 + inPos)) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in.get(24 + inPos)) << 45) & 562949953421311L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in.get(24 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in.get(25 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in.get(26 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in.get(27 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in.get(28 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in.get(29 + inPos)) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in.get(30 + inPos)) << 44) & 562949953421311L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in.get(30 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in.get(31 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in.get(32 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in.get(33 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in.get(34 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in.get(35 + inPos)) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in.get(36 + inPos)) << 43) & 562949953421311L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in.get(36 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in.get(37 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in.get(38 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in.get(39 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in.get(40 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in.get(41 + inPos)) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in.get(42 + inPos)) << 42) & 562949953421311L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in.get(42 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in.get(43 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in.get(44 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in.get(45 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in.get(46 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in.get(47 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in.get(48 + inPos)) << 41) & 562949953421311L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in.get(49 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in.get(50 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in.get(51 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in.get(52 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in.get(53 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in.get(54 + inPos)) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in.get(55 + inPos)) << 48) & 562949953421311L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in.get(55 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in.get(56 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in.get(57 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in.get(58 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in.get(59 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in.get(60 + inPos)) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in.get(61 + inPos)) << 47) & 562949953421311L);
out[10 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in.get(61 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in.get(62 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in.get(63 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in.get(64 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in.get(65 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in.get(66 + inPos)) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in.get(67 + inPos)) << 46) & 562949953421311L);
out[11 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in.get(67 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in.get(68 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in.get(69 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in.get(70 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in.get(71 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in.get(72 + inPos)) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in.get(73 + inPos)) << 45) & 562949953421311L);
out[12 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in.get(73 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in.get(74 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in.get(75 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in.get(76 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in.get(77 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in.get(78 + inPos)) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in.get(79 + inPos)) << 44) & 562949953421311L);
out[13 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in.get(79 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in.get(80 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in.get(81 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in.get(82 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in.get(83 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in.get(84 + inPos)) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in.get(85 + inPos)) << 43) & 562949953421311L);
out[14 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in.get(85 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in.get(86 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in.get(87 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in.get(88 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in.get(89 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in.get(90 + inPos)) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in.get(91 + inPos)) << 42) & 562949953421311L);
out[15 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in.get(91 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in.get(92 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in.get(93 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in.get(94 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in.get(95 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in.get(96 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in.get(97 + inPos)) << 41) & 562949953421311L);
out[16 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in.get(98 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in.get(99 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in.get(100 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in.get(101 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in.get(102 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in.get(103 + inPos)) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in.get(104 + inPos)) << 48) & 562949953421311L);
out[17 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in.get(104 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in.get(105 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in.get(106 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in.get(107 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in.get(108 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in.get(109 + inPos)) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in.get(110 + inPos)) << 47) & 562949953421311L);
out[18 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in.get(110 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in.get(111 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in.get(112 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in.get(113 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in.get(114 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in.get(115 + inPos)) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in.get(116 + inPos)) << 46) & 562949953421311L);
out[19 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in.get(116 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in.get(117 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in.get(118 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in.get(119 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in.get(120 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in.get(121 + inPos)) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in.get(122 + inPos)) << 45) & 562949953421311L);
out[20 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in.get(122 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in.get(123 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in.get(124 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in.get(125 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in.get(126 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in.get(127 + inPos)) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in.get(128 + inPos)) << 44) & 562949953421311L);
out[21 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in.get(128 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in.get(129 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in.get(130 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in.get(131 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in.get(132 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in.get(133 + inPos)) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in.get(134 + inPos)) << 43) & 562949953421311L);
out[22 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in.get(134 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in.get(135 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in.get(136 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in.get(137 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in.get(138 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in.get(139 + inPos)) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in.get(140 + inPos)) << 42) & 562949953421311L);
out[23 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in.get(140 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in.get(141 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in.get(142 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in.get(143 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in.get(144 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in.get(145 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in.get(146 + inPos)) << 41) & 562949953421311L);
out[24 + outPos] =
// [76543210]
// [_________________________________________76543210]
((((long)in.get(147 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________54321098________]
((((long)in.get(148 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________32109876________________]
((((long)in.get(149 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________10987654________________________]
((((long)in.get(150 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________98765432________________________________]
((((long)in.get(151 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_76543210________________________________________]
((((long)in.get(152 + inPos)) << 40) & 281474976710655L)
| // [_______0]
// [8________________________________________________]
((((long)in.get(153 + inPos)) << 48) & 562949953421311L);
out[25 + outPos] =
// [7654321_]
// [__________________________________________6543210]
((((long)in.get(153 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________43210987_______]
((((long)in.get(154 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________21098765_______________]
((((long)in.get(155 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________09876543_______________________]
((((long)in.get(156 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________87654321_______________________________]
((((long)in.get(157 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__65432109_______________________________________]
((((long)in.get(158 + inPos)) << 39) & 140737488355327L)
| // [______10]
// [87_______________________________________________]
((((long)in.get(159 + inPos)) << 47) & 562949953421311L);
out[26 + outPos] =
// [765432__]
// [___________________________________________543210]
((((long)in.get(159 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________32109876______]
((((long)in.get(160 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________10987654______________]
((((long)in.get(161 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________98765432______________________]
((((long)in.get(162 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________76543210______________________________]
((((long)in.get(163 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___54321098______________________________________]
((((long)in.get(164 + inPos)) << 38) & 70368744177663L)
| // [_____210]
// [876______________________________________________]
((((long)in.get(165 + inPos)) << 46) & 562949953421311L);
out[27 + outPos] =
// [76543___]
// [____________________________________________43210]
((((long)in.get(165 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________21098765_____]
((((long)in.get(166 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________09876543_____________]
((((long)in.get(167 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________87654321_____________________]
((((long)in.get(168 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________65432109_____________________________]
((((long)in.get(169 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____43210987_____________________________________]
((((long)in.get(170 + inPos)) << 37) & 35184372088831L)
| // [____3210]
// [8765_____________________________________________]
((((long)in.get(171 + inPos)) << 45) & 562949953421311L);
out[28 + outPos] =
// [7654____]
// [_____________________________________________3210]
((((long)in.get(171 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________10987654____]
((((long)in.get(172 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________98765432____________]
((((long)in.get(173 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________76543210____________________]
((((long)in.get(174 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________54321098____________________________]
((((long)in.get(175 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____32109876____________________________________]
((((long)in.get(176 + inPos)) << 36) & 17592186044415L)
| // [___43210]
// [87654____________________________________________]
((((long)in.get(177 + inPos)) << 44) & 562949953421311L);
out[29 + outPos] =
// [765_____]
// [______________________________________________210]
((((long)in.get(177 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________09876543___]
((((long)in.get(178 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________87654321___________]
((((long)in.get(179 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________65432109___________________]
((((long)in.get(180 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________43210987___________________________]
((((long)in.get(181 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______21098765___________________________________]
((((long)in.get(182 + inPos)) << 35) & 8796093022207L)
| // [__543210]
// [876543___________________________________________]
((((long)in.get(183 + inPos)) << 43) & 562949953421311L);
out[30 + outPos] =
// [76______]
// [_______________________________________________10]
((((long)in.get(183 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________98765432__]
((((long)in.get(184 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________76543210__________]
((((long)in.get(185 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________54321098__________________]
((((long)in.get(186 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________32109876__________________________]
((((long)in.get(187 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______10987654__________________________________]
((((long)in.get(188 + inPos)) << 34) & 4398046511103L)
| // [_6543210]
// [8765432__________________________________________]
((((long)in.get(189 + inPos)) << 42) & 562949953421311L);
out[31 + outPos] =
// [7_______]
// [________________________________________________0]
((((long)in.get(189 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________87654321_]
((((long)in.get(190 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________65432109_________]
((((long)in.get(191 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________43210987_________________]
((((long)in.get(192 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________21098765_________________________]
((((long)in.get(193 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________09876543_________________________________]
((((long)in.get(194 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [87654321_________________________________________]
((((long)in.get(195 + inPos)) << 41) & 562949953421311L);
}
}
private static final class Packer50 extends BytePackerForLong {
private Packer50() {
super(50);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[ 0 + inPos] & 1125899906842623L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[ 0 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[ 1 + inPos] & 1125899906842623L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[ 1 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[ 1 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[ 2 + inPos] & 1125899906842623L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[ 2 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[ 2 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[ 3 + inPos] & 1125899906842623L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[ 3 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[ 3 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[ 4 + inPos] & 1125899906842623L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[ 4 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[31 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[ 5 + inPos] & 1125899906842623L) << 2)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[ 5 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[ 5 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[ 6 + inPos] & 1125899906842623L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[ 6 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[ 6 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[43 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[ 7 + inPos] & 1125899906842623L) << 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[ 7 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[ 7 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 42)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[ 0 + inPos] & 1125899906842623L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[ 0 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[ 0 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[ 1 + inPos] & 1125899906842623L) << 2)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[ 1 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[ 1 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[12 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[ 1 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[ 2 + inPos] & 1125899906842623L) << 4)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[ 2 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[ 2 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[18 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[ 2 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[ 3 + inPos] & 1125899906842623L) << 6)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[ 3 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[ 3 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[ 3 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[ 4 + inPos] & 1125899906842623L))) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[ 4 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[31 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[ 4 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[ 5 + inPos] & 1125899906842623L) << 2)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[ 5 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[ 5 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[ 5 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[ 6 + inPos] & 1125899906842623L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[ 6 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[ 6 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[43 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[ 6 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[ 7 + inPos] & 1125899906842623L) << 6)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[ 7 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[ 7 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[ 7 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[ 8 + inPos] & 1125899906842623L))) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[ 8 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[ 8 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[ 8 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[ 8 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[ 8 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[56 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[ 8 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[ 9 + inPos] & 1125899906842623L) << 2)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[ 9 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[ 9 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[ 9 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[ 9 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[ 9 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[62 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[ 9 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[10 + inPos] & 1125899906842623L) << 4)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[10 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[10 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[10 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[10 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[10 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[68 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[10 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[11 + inPos] & 1125899906842623L) << 6)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[11 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[11 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[11 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[11 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[11 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[11 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[12 + inPos] & 1125899906842623L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[12 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[12 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[12 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[12 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[12 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[81 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[12 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[13 + inPos] & 1125899906842623L) << 2)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[13 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[13 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[13 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[13 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[13 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[87 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[13 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[14 + inPos] & 1125899906842623L) << 4)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[14 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[14 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[14 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[14 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[14 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[93 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[14 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[15 + inPos] & 1125899906842623L) << 6)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[15 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[15 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[15 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[15 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[15 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[15 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[16 + inPos] & 1125899906842623L))) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[16 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[16 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[16 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[16 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[16 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[106 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[16 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[17 + inPos] & 1125899906842623L) << 2)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[17 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[17 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[17 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[17 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[17 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[112 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[17 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[18 + inPos] & 1125899906842623L) << 4)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[18 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[18 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[18 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[18 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[18 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[118 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[18 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[19 + inPos] & 1125899906842623L) << 6)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[19 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[19 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[19 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[19 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[19 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[19 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[20 + inPos] & 1125899906842623L))) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[20 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[20 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[20 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[20 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[20 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[131 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[20 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[21 + inPos] & 1125899906842623L) << 2)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[21 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[21 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[21 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[21 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[21 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[137 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[21 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[22 + inPos] & 1125899906842623L) << 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[22 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[22 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[22 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[22 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[22 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[143 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[22 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[23 + inPos] & 1125899906842623L) << 6)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[23 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[23 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[23 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[23 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[23 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[23 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[24 + inPos] & 1125899906842623L))) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[24 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[24 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[24 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[24 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[24 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[156 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[24 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[25 + inPos] & 1125899906842623L) << 2)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[25 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[25 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[25 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[25 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[25 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[162 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[25 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[26 + inPos] & 1125899906842623L) << 4)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[26 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[26 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[26 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[26 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[26 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[168 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[26 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[27 + inPos] & 1125899906842623L) << 6)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[27 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[27 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[27 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[27 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[27 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[27 + inPos] & 1125899906842623L) >>> 42)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [__________________________________________76543210]
((in[28 + inPos] & 1125899906842623L))) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [__________________________________54321098________]
((in[28 + inPos] & 1125899906842623L) >>> 8)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [__________________________32109876________________]
((in[28 + inPos] & 1125899906842623L) >>> 16)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [__________________10987654________________________]
((in[28 + inPos] & 1125899906842623L) >>> 24)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [__________98765432________________________________]
((in[28 + inPos] & 1125899906842623L) >>> 32)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [__76543210________________________________________]
((in[28 + inPos] & 1125899906842623L) >>> 40)) & 255);
out[181 + outPos] = (byte)((
// [______10]
// [98________________________________________________]
((in[28 + inPos] & 1125899906842623L) >>> 48)
| // [765432__]
// [____________________________________________543210]
((in[29 + inPos] & 1125899906842623L) << 2)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876______]
((in[29 + inPos] & 1125899906842623L) >>> 6)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [____________________________10987654______________]
((in[29 + inPos] & 1125899906842623L) >>> 14)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [____________________98765432______________________]
((in[29 + inPos] & 1125899906842623L) >>> 22)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [____________76543210______________________________]
((in[29 + inPos] & 1125899906842623L) >>> 30)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [____54321098______________________________________]
((in[29 + inPos] & 1125899906842623L) >>> 38)) & 255);
out[187 + outPos] = (byte)((
// [____3210]
// [9876______________________________________________]
((in[29 + inPos] & 1125899906842623L) >>> 46)
| // [7654____]
// [______________________________________________3210]
((in[30 + inPos] & 1125899906842623L) << 4)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [______________________________________10987654____]
((in[30 + inPos] & 1125899906842623L) >>> 4)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [______________________________98765432____________]
((in[30 + inPos] & 1125899906842623L) >>> 12)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [______________________76543210____________________]
((in[30 + inPos] & 1125899906842623L) >>> 20)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [______________54321098____________________________]
((in[30 + inPos] & 1125899906842623L) >>> 28)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [______32109876____________________________________]
((in[30 + inPos] & 1125899906842623L) >>> 36)) & 255);
out[193 + outPos] = (byte)((
// [__543210]
// [987654____________________________________________]
((in[30 + inPos] & 1125899906842623L) >>> 44)
| // [76______]
// [________________________________________________10]
((in[31 + inPos] & 1125899906842623L) << 6)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432__]
((in[31 + inPos] & 1125899906842623L) >>> 2)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [________________________________76543210__________]
((in[31 + inPos] & 1125899906842623L) >>> 10)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [________________________54321098__________________]
((in[31 + inPos] & 1125899906842623L) >>> 18)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [________________32109876__________________________]
((in[31 + inPos] & 1125899906842623L) >>> 26)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [________10987654__________________________________]
((in[31 + inPos] & 1125899906842623L) >>> 34)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [98765432__________________________________________]
((in[31 + inPos] & 1125899906842623L) >>> 42)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 1125899906842623L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[ 7 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[ 8 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[ 9 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[10 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[11 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[12 + inPos]) << 46) & 1125899906842623L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[15 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[16 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[17 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[18 + inPos]) << 44) & 1125899906842623L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[21 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[22 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[23 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[24 + inPos]) << 42) & 1125899906842623L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[27 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[28 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[29 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[30 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[31 + inPos]) << 48) & 1125899906842623L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[31 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[32 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[33 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[34 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[35 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[36 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[37 + inPos]) << 46) & 1125899906842623L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[40 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[41 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[42 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[43 + inPos]) << 44) & 1125899906842623L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[43 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[44 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[45 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[46 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[47 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[48 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[49 + inPos]) << 42) & 1125899906842623L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 1125899906842623L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get( 7 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get( 8 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get( 9 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(10 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(11 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(12 + inPos)) << 46) & 1125899906842623L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(15 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(16 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(17 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(18 + inPos)) << 44) & 1125899906842623L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(21 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(22 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(23 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(24 + inPos)) << 42) & 1125899906842623L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(27 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(28 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(29 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(30 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(31 + inPos)) << 48) & 1125899906842623L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(31 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(32 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(33 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(34 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(35 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(36 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(37 + inPos)) << 46) & 1125899906842623L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(40 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(41 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(42 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(43 + inPos)) << 44) & 1125899906842623L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(43 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(44 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(45 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(46 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(47 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(48 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(49 + inPos)) << 42) & 1125899906842623L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 1125899906842623L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[ 6 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[ 7 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[ 8 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[ 9 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[10 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[11 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[12 + inPos]) << 46) & 1125899906842623L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[12 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[13 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[14 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[15 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[16 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[17 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[18 + inPos]) << 44) & 1125899906842623L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[18 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[19 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[20 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[21 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[22 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[23 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[24 + inPos]) << 42) & 1125899906842623L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[25 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[26 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[27 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[28 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[29 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[30 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[31 + inPos]) << 48) & 1125899906842623L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[31 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[32 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[33 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[34 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[35 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[36 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[37 + inPos]) << 46) & 1125899906842623L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[40 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[41 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[42 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[43 + inPos]) << 44) & 1125899906842623L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[43 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[44 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[45 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[46 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[47 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[48 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[49 + inPos]) << 42) & 1125899906842623L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[50 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[51 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[52 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[53 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[54 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[55 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[56 + inPos]) << 48) & 1125899906842623L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[56 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[57 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[58 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[59 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[60 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[61 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[62 + inPos]) << 46) & 1125899906842623L);
out[10 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[62 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[63 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[64 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[65 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[66 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[67 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[68 + inPos]) << 44) & 1125899906842623L);
out[11 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[68 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[69 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[70 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[71 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[72 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[73 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[74 + inPos]) << 42) & 1125899906842623L);
out[12 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[78 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[79 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[80 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[81 + inPos]) << 48) & 1125899906842623L);
out[13 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[81 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[82 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[83 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[84 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[85 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[86 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[87 + inPos]) << 46) & 1125899906842623L);
out[14 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[87 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[88 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[89 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[90 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[91 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[92 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[93 + inPos]) << 44) & 1125899906842623L);
out[15 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[93 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[94 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[95 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[96 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[97 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[98 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[99 + inPos]) << 42) & 1125899906842623L);
out[16 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[100 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[101 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[102 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[103 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[104 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[105 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[106 + inPos]) << 48) & 1125899906842623L);
out[17 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[106 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[107 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[108 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[109 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[110 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[111 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[112 + inPos]) << 46) & 1125899906842623L);
out[18 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[112 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[113 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[114 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[115 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[116 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[117 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[118 + inPos]) << 44) & 1125899906842623L);
out[19 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[118 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[119 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[120 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[121 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[122 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[123 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[124 + inPos]) << 42) & 1125899906842623L);
out[20 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[125 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[126 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[127 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[128 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[129 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[130 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[131 + inPos]) << 48) & 1125899906842623L);
out[21 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[131 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[132 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[133 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[134 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[135 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[136 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[137 + inPos]) << 46) & 1125899906842623L);
out[22 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[137 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[138 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[139 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[140 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[141 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[142 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[143 + inPos]) << 44) & 1125899906842623L);
out[23 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[143 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[144 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[145 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[146 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[147 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[148 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[149 + inPos]) << 42) & 1125899906842623L);
out[24 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[150 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[151 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[152 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[153 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[154 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[155 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[156 + inPos]) << 48) & 1125899906842623L);
out[25 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[156 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[157 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[158 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[159 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[160 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[161 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[162 + inPos]) << 46) & 1125899906842623L);
out[26 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[162 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[163 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[164 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[165 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[166 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[167 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[168 + inPos]) << 44) & 1125899906842623L);
out[27 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[168 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[169 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[170 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[171 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[172 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[173 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[174 + inPos]) << 42) & 1125899906842623L);
out[28 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in[175 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in[176 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in[177 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in[178 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in[179 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in[180 + inPos]) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in[181 + inPos]) << 48) & 1125899906842623L);
out[29 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in[181 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in[182 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in[183 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in[184 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in[185 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in[186 + inPos]) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in[187 + inPos]) << 46) & 1125899906842623L);
out[30 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in[187 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in[188 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in[189 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in[190 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in[191 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in[192 + inPos]) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in[193 + inPos]) << 44) & 1125899906842623L);
out[31 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in[193 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in[194 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in[195 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in[196 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in[197 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in[198 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in[199 + inPos]) << 42) & 1125899906842623L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 1125899906842623L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get( 6 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get( 7 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get( 8 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get( 9 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(10 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(11 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(12 + inPos)) << 46) & 1125899906842623L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(12 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(13 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(14 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(15 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(16 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(17 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(18 + inPos)) << 44) & 1125899906842623L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(18 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(19 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(20 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(21 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(22 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(23 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(24 + inPos)) << 42) & 1125899906842623L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(25 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(26 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(27 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(28 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(29 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(30 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(31 + inPos)) << 48) & 1125899906842623L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(31 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(32 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(33 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(34 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(35 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(36 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(37 + inPos)) << 46) & 1125899906842623L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(40 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(41 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(42 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(43 + inPos)) << 44) & 1125899906842623L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(43 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(44 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(45 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(46 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(47 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(48 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(49 + inPos)) << 42) & 1125899906842623L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(50 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(51 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(52 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(53 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(54 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(55 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(56 + inPos)) << 48) & 1125899906842623L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(56 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(57 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(58 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(59 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(60 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(61 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(62 + inPos)) << 46) & 1125899906842623L);
out[10 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(62 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(63 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(64 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(65 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(66 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(67 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(68 + inPos)) << 44) & 1125899906842623L);
out[11 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(68 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(69 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(70 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(71 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(72 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(73 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(74 + inPos)) << 42) & 1125899906842623L);
out[12 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(78 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(79 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(80 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(81 + inPos)) << 48) & 1125899906842623L);
out[13 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(81 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(82 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(83 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(84 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(85 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(86 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(87 + inPos)) << 46) & 1125899906842623L);
out[14 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(87 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(88 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(89 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(90 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(91 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(92 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(93 + inPos)) << 44) & 1125899906842623L);
out[15 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(93 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(94 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(95 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(96 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(97 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(98 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(99 + inPos)) << 42) & 1125899906842623L);
out[16 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(100 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(101 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(102 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(103 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(104 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(105 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(106 + inPos)) << 48) & 1125899906842623L);
out[17 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(106 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(107 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(108 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(109 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(110 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(111 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(112 + inPos)) << 46) & 1125899906842623L);
out[18 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(112 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(113 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(114 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(115 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(116 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(117 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(118 + inPos)) << 44) & 1125899906842623L);
out[19 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(118 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(119 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(120 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(121 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(122 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(123 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(124 + inPos)) << 42) & 1125899906842623L);
out[20 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(125 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(126 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(127 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(128 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(129 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(130 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(131 + inPos)) << 48) & 1125899906842623L);
out[21 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(131 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(132 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(133 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(134 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(135 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(136 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(137 + inPos)) << 46) & 1125899906842623L);
out[22 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(137 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(138 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(139 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(140 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(141 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(142 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(143 + inPos)) << 44) & 1125899906842623L);
out[23 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(143 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(144 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(145 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(146 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(147 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(148 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(149 + inPos)) << 42) & 1125899906842623L);
out[24 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(150 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(151 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(152 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(153 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(154 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(155 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(156 + inPos)) << 48) & 1125899906842623L);
out[25 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(156 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(157 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(158 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(159 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(160 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(161 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(162 + inPos)) << 46) & 1125899906842623L);
out[26 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(162 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(163 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(164 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(165 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(166 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(167 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(168 + inPos)) << 44) & 1125899906842623L);
out[27 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(168 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(169 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(170 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(171 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(172 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(173 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(174 + inPos)) << 42) & 1125899906842623L);
out[28 + outPos] =
// [76543210]
// [__________________________________________76543210]
((((long)in.get(175 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________54321098________]
((((long)in.get(176 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________32109876________________]
((((long)in.get(177 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________10987654________________________]
((((long)in.get(178 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________98765432________________________________]
((((long)in.get(179 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__76543210________________________________________]
((((long)in.get(180 + inPos)) << 40) & 281474976710655L)
| // [______10]
// [98________________________________________________]
((((long)in.get(181 + inPos)) << 48) & 1125899906842623L);
out[29 + outPos] =
// [765432__]
// [____________________________________________543210]
((((long)in.get(181 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________32109876______]
((((long)in.get(182 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________10987654______________]
((((long)in.get(183 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________98765432______________________]
((((long)in.get(184 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________76543210______________________________]
((((long)in.get(185 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____54321098______________________________________]
((((long)in.get(186 + inPos)) << 38) & 70368744177663L)
| // [____3210]
// [9876______________________________________________]
((((long)in.get(187 + inPos)) << 46) & 1125899906842623L);
out[30 + outPos] =
// [7654____]
// [______________________________________________3210]
((((long)in.get(187 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________10987654____]
((((long)in.get(188 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________98765432____________]
((((long)in.get(189 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________76543210____________________]
((((long)in.get(190 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________54321098____________________________]
((((long)in.get(191 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______32109876____________________________________]
((((long)in.get(192 + inPos)) << 36) & 17592186044415L)
| // [__543210]
// [987654____________________________________________]
((((long)in.get(193 + inPos)) << 44) & 1125899906842623L);
out[31 + outPos] =
// [76______]
// [________________________________________________10]
((((long)in.get(193 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________98765432__]
((((long)in.get(194 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________76543210__________]
((((long)in.get(195 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________54321098__________________]
((((long)in.get(196 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________32109876__________________________]
((((long)in.get(197 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________10987654__________________________________]
((((long)in.get(198 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [98765432__________________________________________]
((((long)in.get(199 + inPos)) << 42) & 1125899906842623L);
}
}
private static final class Packer51 extends BytePackerForLong {
private Packer51() {
super(51);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210]
((in[ 0 + inPos] & 2251799813685247L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098________]
((in[ 0 + inPos] & 2251799813685247L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________________32109876________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________________10987654________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___________98765432________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___76543210________________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_____210]
// [098________________________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 48)
| // [76543___]
// [______________________________________________43210]
((in[ 1 + inPos] & 2251799813685247L) << 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_____]
((in[ 1 + inPos] & 2251799813685247L) >>> 5)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_____________]
((in[ 1 + inPos] & 2251799813685247L) >>> 13)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________87654321_____________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 21)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________65432109_____________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 29)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______43210987_____________________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 37)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [098765_____________________________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 45)
| // [76______]
// [_________________________________________________10]
((in[ 2 + inPos] & 2251799813685247L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432__]
((in[ 2 + inPos] & 2251799813685247L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210__________]
((in[ 2 + inPos] & 2251799813685247L) >>> 10)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________________54321098__________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 18)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________________32109876__________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 26)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_________10987654__________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 34)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_98765432__________________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 42)) & 255);
out[19 + outPos] = (byte)((
// [_______0]
// [0__________________________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 50)
| // [7654321_]
// [____________________________________________6543210]
((in[ 3 + inPos] & 2251799813685247L) << 1)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_______]
((in[ 3 + inPos] & 2251799813685247L) >>> 7)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_______________]
((in[ 3 + inPos] & 2251799813685247L) >>> 15)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________09876543_______________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 23)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________87654321_______________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 31)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____65432109_______________________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 39)) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [0987_______________________________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 47)
| // [7654____]
// [_______________________________________________3210]
((in[ 4 + inPos] & 2251799813685247L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654____]
((in[ 4 + inPos] & 2251799813685247L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432____________]
((in[ 4 + inPos] & 2251799813685247L) >>> 12)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_______________________76543210____________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 20)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_______________54321098____________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 28)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______32109876____________________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 36)) & 255);
out[31 + outPos] = (byte)((
// [_6543210]
// [0987654____________________________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 44)
| // [7_______]
// [__________________________________________________0]
((in[ 5 + inPos] & 2251799813685247L) << 7)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321_]
((in[ 5 + inPos] & 2251799813685247L) >>> 1)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109_________]
((in[ 5 + inPos] & 2251799813685247L) >>> 9)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 17)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________21098765_________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 25)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________09876543_________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 33)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__87654321_________________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 41)) & 255);
out[38 + outPos] = (byte)((
// [______10]
// [09_________________________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 49)
| // [765432__]
// [_____________________________________________543210]
((in[ 6 + inPos] & 2251799813685247L) << 2)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876______]
((in[ 6 + inPos] & 2251799813685247L) >>> 6)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654______________]
((in[ 6 + inPos] & 2251799813685247L) >>> 14)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_____________________98765432______________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 22)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_____________76543210______________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 30)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_____54321098______________________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 38)) & 255);
out[44 + outPos] = (byte)((
// [___43210]
// [09876______________________________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 46)
| // [765_____]
// [________________________________________________210]
((in[ 7 + inPos] & 2251799813685247L) << 5)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543___]
((in[ 7 + inPos] & 2251799813685247L) >>> 3)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________________87654321___________]
((in[ 7 + inPos] & 2251799813685247L) >>> 11)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________65432109___________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 19)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________43210987___________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 27)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________21098765___________________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 35)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [09876543___________________________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 43)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210]
((in[ 0 + inPos] & 2251799813685247L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098________]
((in[ 0 + inPos] & 2251799813685247L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________________32109876________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________________10987654________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___________98765432________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___76543210________________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_____210]
// [098________________________________________________]
((in[ 0 + inPos] & 2251799813685247L) >>> 48)
| // [76543___]
// [______________________________________________43210]
((in[ 1 + inPos] & 2251799813685247L) << 3)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_____]
((in[ 1 + inPos] & 2251799813685247L) >>> 5)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_____________]
((in[ 1 + inPos] & 2251799813685247L) >>> 13)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________87654321_____________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 21)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________65432109_____________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 29)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______43210987_____________________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 37)) & 255);
out[12 + outPos] = (byte)((
// [__543210]
// [098765_____________________________________________]
((in[ 1 + inPos] & 2251799813685247L) >>> 45)
| // [76______]
// [_________________________________________________10]
((in[ 2 + inPos] & 2251799813685247L) << 6)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432__]
((in[ 2 + inPos] & 2251799813685247L) >>> 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210__________]
((in[ 2 + inPos] & 2251799813685247L) >>> 10)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________________54321098__________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 18)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________________32109876__________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 26)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_________10987654__________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 34)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_98765432__________________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 42)) & 255);
out[19 + outPos] = (byte)((
// [_______0]
// [0__________________________________________________]
((in[ 2 + inPos] & 2251799813685247L) >>> 50)
| // [7654321_]
// [____________________________________________6543210]
((in[ 3 + inPos] & 2251799813685247L) << 1)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_______]
((in[ 3 + inPos] & 2251799813685247L) >>> 7)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_______________]
((in[ 3 + inPos] & 2251799813685247L) >>> 15)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________09876543_______________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 23)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________87654321_______________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 31)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____65432109_______________________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 39)) & 255);
out[25 + outPos] = (byte)((
// [____3210]
// [0987_______________________________________________]
((in[ 3 + inPos] & 2251799813685247L) >>> 47)
| // [7654____]
// [_______________________________________________3210]
((in[ 4 + inPos] & 2251799813685247L) << 4)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654____]
((in[ 4 + inPos] & 2251799813685247L) >>> 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432____________]
((in[ 4 + inPos] & 2251799813685247L) >>> 12)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_______________________76543210____________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 20)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_______________54321098____________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 28)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______32109876____________________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 36)) & 255);
out[31 + outPos] = (byte)((
// [_6543210]
// [0987654____________________________________________]
((in[ 4 + inPos] & 2251799813685247L) >>> 44)
| // [7_______]
// [__________________________________________________0]
((in[ 5 + inPos] & 2251799813685247L) << 7)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321_]
((in[ 5 + inPos] & 2251799813685247L) >>> 1)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109_________]
((in[ 5 + inPos] & 2251799813685247L) >>> 9)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 17)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________21098765_________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 25)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________09876543_________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 33)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__87654321_________________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 41)) & 255);
out[38 + outPos] = (byte)((
// [______10]
// [09_________________________________________________]
((in[ 5 + inPos] & 2251799813685247L) >>> 49)
| // [765432__]
// [_____________________________________________543210]
((in[ 6 + inPos] & 2251799813685247L) << 2)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876______]
((in[ 6 + inPos] & 2251799813685247L) >>> 6)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654______________]
((in[ 6 + inPos] & 2251799813685247L) >>> 14)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [_____________________98765432______________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 22)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_____________76543210______________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 30)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_____54321098______________________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 38)) & 255);
out[44 + outPos] = (byte)((
// [___43210]
// [09876______________________________________________]
((in[ 6 + inPos] & 2251799813685247L) >>> 46)
| // [765_____]
// [________________________________________________210]
((in[ 7 + inPos] & 2251799813685247L) << 5)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543___]
((in[ 7 + inPos] & 2251799813685247L) >>> 3)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________________87654321___________]
((in[ 7 + inPos] & 2251799813685247L) >>> 11)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________65432109___________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 19)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________43210987___________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 27)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________21098765___________________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 35)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [09876543___________________________________________]
((in[ 7 + inPos] & 2251799813685247L) >>> 43)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210]
((in[ 8 + inPos] & 2251799813685247L))) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098________]
((in[ 8 + inPos] & 2251799813685247L) >>> 8)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [___________________________32109876________________]
((in[ 8 + inPos] & 2251799813685247L) >>> 16)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [___________________10987654________________________]
((in[ 8 + inPos] & 2251799813685247L) >>> 24)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [___________98765432________________________________]
((in[ 8 + inPos] & 2251799813685247L) >>> 32)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [___76543210________________________________________]
((in[ 8 + inPos] & 2251799813685247L) >>> 40)) & 255);
out[57 + outPos] = (byte)((
// [_____210]
// [098________________________________________________]
((in[ 8 + inPos] & 2251799813685247L) >>> 48)
| // [76543___]
// [______________________________________________43210]
((in[ 9 + inPos] & 2251799813685247L) << 3)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_____]
((in[ 9 + inPos] & 2251799813685247L) >>> 5)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_____________]
((in[ 9 + inPos] & 2251799813685247L) >>> 13)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [______________________87654321_____________________]
((in[ 9 + inPos] & 2251799813685247L) >>> 21)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [______________65432109_____________________________]
((in[ 9 + inPos] & 2251799813685247L) >>> 29)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______43210987_____________________________________]
((in[ 9 + inPos] & 2251799813685247L) >>> 37)) & 255);
out[63 + outPos] = (byte)((
// [__543210]
// [098765_____________________________________________]
((in[ 9 + inPos] & 2251799813685247L) >>> 45)
| // [76______]
// [_________________________________________________10]
((in[10 + inPos] & 2251799813685247L) << 6)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432__]
((in[10 + inPos] & 2251799813685247L) >>> 2)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210__________]
((in[10 + inPos] & 2251799813685247L) >>> 10)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_________________________54321098__________________]
((in[10 + inPos] & 2251799813685247L) >>> 18)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_________________32109876__________________________]
((in[10 + inPos] & 2251799813685247L) >>> 26)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_________10987654__________________________________]
((in[10 + inPos] & 2251799813685247L) >>> 34)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_98765432__________________________________________]
((in[10 + inPos] & 2251799813685247L) >>> 42)) & 255);
out[70 + outPos] = (byte)((
// [_______0]
// [0__________________________________________________]
((in[10 + inPos] & 2251799813685247L) >>> 50)
| // [7654321_]
// [____________________________________________6543210]
((in[11 + inPos] & 2251799813685247L) << 1)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_______]
((in[11 + inPos] & 2251799813685247L) >>> 7)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_______________]
((in[11 + inPos] & 2251799813685247L) >>> 15)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [____________________09876543_______________________]
((in[11 + inPos] & 2251799813685247L) >>> 23)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________87654321_______________________________]
((in[11 + inPos] & 2251799813685247L) >>> 31)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____65432109_______________________________________]
((in[11 + inPos] & 2251799813685247L) >>> 39)) & 255);
out[76 + outPos] = (byte)((
// [____3210]
// [0987_______________________________________________]
((in[11 + inPos] & 2251799813685247L) >>> 47)
| // [7654____]
// [_______________________________________________3210]
((in[12 + inPos] & 2251799813685247L) << 4)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654____]
((in[12 + inPos] & 2251799813685247L) >>> 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432____________]
((in[12 + inPos] & 2251799813685247L) >>> 12)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_______________________76543210____________________]
((in[12 + inPos] & 2251799813685247L) >>> 20)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_______________54321098____________________________]
((in[12 + inPos] & 2251799813685247L) >>> 28)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_______32109876____________________________________]
((in[12 + inPos] & 2251799813685247L) >>> 36)) & 255);
out[82 + outPos] = (byte)((
// [_6543210]
// [0987654____________________________________________]
((in[12 + inPos] & 2251799813685247L) >>> 44)
| // [7_______]
// [__________________________________________________0]
((in[13 + inPos] & 2251799813685247L) << 7)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321_]
((in[13 + inPos] & 2251799813685247L) >>> 1)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109_________]
((in[13 + inPos] & 2251799813685247L) >>> 9)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_________________]
((in[13 + inPos] & 2251799813685247L) >>> 17)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [__________________21098765_________________________]
((in[13 + inPos] & 2251799813685247L) >>> 25)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [__________09876543_________________________________]
((in[13 + inPos] & 2251799813685247L) >>> 33)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__87654321_________________________________________]
((in[13 + inPos] & 2251799813685247L) >>> 41)) & 255);
out[89 + outPos] = (byte)((
// [______10]
// [09_________________________________________________]
((in[13 + inPos] & 2251799813685247L) >>> 49)
| // [765432__]
// [_____________________________________________543210]
((in[14 + inPos] & 2251799813685247L) << 2)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876______]
((in[14 + inPos] & 2251799813685247L) >>> 6)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654______________]
((in[14 + inPos] & 2251799813685247L) >>> 14)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [_____________________98765432______________________]
((in[14 + inPos] & 2251799813685247L) >>> 22)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_____________76543210______________________________]
((in[14 + inPos] & 2251799813685247L) >>> 30)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_____54321098______________________________________]
((in[14 + inPos] & 2251799813685247L) >>> 38)) & 255);
out[95 + outPos] = (byte)((
// [___43210]
// [09876______________________________________________]
((in[14 + inPos] & 2251799813685247L) >>> 46)
| // [765_____]
// [________________________________________________210]
((in[15 + inPos] & 2251799813685247L) << 5)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543___]
((in[15 + inPos] & 2251799813685247L) >>> 3)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________________________87654321___________]
((in[15 + inPos] & 2251799813685247L) >>> 11)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________65432109___________________]
((in[15 + inPos] & 2251799813685247L) >>> 19)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________43210987___________________________]
((in[15 + inPos] & 2251799813685247L) >>> 27)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________21098765___________________________________]
((in[15 + inPos] & 2251799813685247L) >>> 35)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [09876543___________________________________________]
((in[15 + inPos] & 2251799813685247L) >>> 43)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210]
((in[16 + inPos] & 2251799813685247L))) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098________]
((in[16 + inPos] & 2251799813685247L) >>> 8)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [___________________________32109876________________]
((in[16 + inPos] & 2251799813685247L) >>> 16)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [___________________10987654________________________]
((in[16 + inPos] & 2251799813685247L) >>> 24)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [___________98765432________________________________]
((in[16 + inPos] & 2251799813685247L) >>> 32)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [___76543210________________________________________]
((in[16 + inPos] & 2251799813685247L) >>> 40)) & 255);
out[108 + outPos] = (byte)((
// [_____210]
// [098________________________________________________]
((in[16 + inPos] & 2251799813685247L) >>> 48)
| // [76543___]
// [______________________________________________43210]
((in[17 + inPos] & 2251799813685247L) << 3)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_____]
((in[17 + inPos] & 2251799813685247L) >>> 5)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_____________]
((in[17 + inPos] & 2251799813685247L) >>> 13)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [______________________87654321_____________________]
((in[17 + inPos] & 2251799813685247L) >>> 21)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [______________65432109_____________________________]
((in[17 + inPos] & 2251799813685247L) >>> 29)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [______43210987_____________________________________]
((in[17 + inPos] & 2251799813685247L) >>> 37)) & 255);
out[114 + outPos] = (byte)((
// [__543210]
// [098765_____________________________________________]
((in[17 + inPos] & 2251799813685247L) >>> 45)
| // [76______]
// [_________________________________________________10]
((in[18 + inPos] & 2251799813685247L) << 6)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432__]
((in[18 + inPos] & 2251799813685247L) >>> 2)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210__________]
((in[18 + inPos] & 2251799813685247L) >>> 10)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_________________________54321098__________________]
((in[18 + inPos] & 2251799813685247L) >>> 18)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [_________________32109876__________________________]
((in[18 + inPos] & 2251799813685247L) >>> 26)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [_________10987654__________________________________]
((in[18 + inPos] & 2251799813685247L) >>> 34)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [_98765432__________________________________________]
((in[18 + inPos] & 2251799813685247L) >>> 42)) & 255);
out[121 + outPos] = (byte)((
// [_______0]
// [0__________________________________________________]
((in[18 + inPos] & 2251799813685247L) >>> 50)
| // [7654321_]
// [____________________________________________6543210]
((in[19 + inPos] & 2251799813685247L) << 1)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_______]
((in[19 + inPos] & 2251799813685247L) >>> 7)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_______________]
((in[19 + inPos] & 2251799813685247L) >>> 15)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________________09876543_______________________]
((in[19 + inPos] & 2251799813685247L) >>> 23)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____________87654321_______________________________]
((in[19 + inPos] & 2251799813685247L) >>> 31)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____65432109_______________________________________]
((in[19 + inPos] & 2251799813685247L) >>> 39)) & 255);
out[127 + outPos] = (byte)((
// [____3210]
// [0987_______________________________________________]
((in[19 + inPos] & 2251799813685247L) >>> 47)
| // [7654____]
// [_______________________________________________3210]
((in[20 + inPos] & 2251799813685247L) << 4)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654____]
((in[20 + inPos] & 2251799813685247L) >>> 4)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432____________]
((in[20 + inPos] & 2251799813685247L) >>> 12)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [_______________________76543210____________________]
((in[20 + inPos] & 2251799813685247L) >>> 20)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [_______________54321098____________________________]
((in[20 + inPos] & 2251799813685247L) >>> 28)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [_______32109876____________________________________]
((in[20 + inPos] & 2251799813685247L) >>> 36)) & 255);
out[133 + outPos] = (byte)((
// [_6543210]
// [0987654____________________________________________]
((in[20 + inPos] & 2251799813685247L) >>> 44)
| // [7_______]
// [__________________________________________________0]
((in[21 + inPos] & 2251799813685247L) << 7)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321_]
((in[21 + inPos] & 2251799813685247L) >>> 1)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109_________]
((in[21 + inPos] & 2251799813685247L) >>> 9)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_________________]
((in[21 + inPos] & 2251799813685247L) >>> 17)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [__________________21098765_________________________]
((in[21 + inPos] & 2251799813685247L) >>> 25)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [__________09876543_________________________________]
((in[21 + inPos] & 2251799813685247L) >>> 33)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [__87654321_________________________________________]
((in[21 + inPos] & 2251799813685247L) >>> 41)) & 255);
out[140 + outPos] = (byte)((
// [______10]
// [09_________________________________________________]
((in[21 + inPos] & 2251799813685247L) >>> 49)
| // [765432__]
// [_____________________________________________543210]
((in[22 + inPos] & 2251799813685247L) << 2)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876______]
((in[22 + inPos] & 2251799813685247L) >>> 6)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654______________]
((in[22 + inPos] & 2251799813685247L) >>> 14)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_____________________98765432______________________]
((in[22 + inPos] & 2251799813685247L) >>> 22)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_____________76543210______________________________]
((in[22 + inPos] & 2251799813685247L) >>> 30)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [_____54321098______________________________________]
((in[22 + inPos] & 2251799813685247L) >>> 38)) & 255);
out[146 + outPos] = (byte)((
// [___43210]
// [09876______________________________________________]
((in[22 + inPos] & 2251799813685247L) >>> 46)
| // [765_____]
// [________________________________________________210]
((in[23 + inPos] & 2251799813685247L) << 5)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543___]
((in[23 + inPos] & 2251799813685247L) >>> 3)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________________________________87654321___________]
((in[23 + inPos] & 2251799813685247L) >>> 11)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________________65432109___________________]
((in[23 + inPos] & 2251799813685247L) >>> 19)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________43210987___________________________]
((in[23 + inPos] & 2251799813685247L) >>> 27)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________21098765___________________________________]
((in[23 + inPos] & 2251799813685247L) >>> 35)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [09876543___________________________________________]
((in[23 + inPos] & 2251799813685247L) >>> 43)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210]
((in[24 + inPos] & 2251799813685247L))) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098________]
((in[24 + inPos] & 2251799813685247L) >>> 8)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [___________________________32109876________________]
((in[24 + inPos] & 2251799813685247L) >>> 16)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [___________________10987654________________________]
((in[24 + inPos] & 2251799813685247L) >>> 24)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [___________98765432________________________________]
((in[24 + inPos] & 2251799813685247L) >>> 32)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [___76543210________________________________________]
((in[24 + inPos] & 2251799813685247L) >>> 40)) & 255);
out[159 + outPos] = (byte)((
// [_____210]
// [098________________________________________________]
((in[24 + inPos] & 2251799813685247L) >>> 48)
| // [76543___]
// [______________________________________________43210]
((in[25 + inPos] & 2251799813685247L) << 3)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_____]
((in[25 + inPos] & 2251799813685247L) >>> 5)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_____________]
((in[25 + inPos] & 2251799813685247L) >>> 13)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [______________________87654321_____________________]
((in[25 + inPos] & 2251799813685247L) >>> 21)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________65432109_____________________________]
((in[25 + inPos] & 2251799813685247L) >>> 29)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______43210987_____________________________________]
((in[25 + inPos] & 2251799813685247L) >>> 37)) & 255);
out[165 + outPos] = (byte)((
// [__543210]
// [098765_____________________________________________]
((in[25 + inPos] & 2251799813685247L) >>> 45)
| // [76______]
// [_________________________________________________10]
((in[26 + inPos] & 2251799813685247L) << 6)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432__]
((in[26 + inPos] & 2251799813685247L) >>> 2)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210__________]
((in[26 + inPos] & 2251799813685247L) >>> 10)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [_________________________54321098__________________]
((in[26 + inPos] & 2251799813685247L) >>> 18)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [_________________32109876__________________________]
((in[26 + inPos] & 2251799813685247L) >>> 26)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [_________10987654__________________________________]
((in[26 + inPos] & 2251799813685247L) >>> 34)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [_98765432__________________________________________]
((in[26 + inPos] & 2251799813685247L) >>> 42)) & 255);
out[172 + outPos] = (byte)((
// [_______0]
// [0__________________________________________________]
((in[26 + inPos] & 2251799813685247L) >>> 50)
| // [7654321_]
// [____________________________________________6543210]
((in[27 + inPos] & 2251799813685247L) << 1)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_______]
((in[27 + inPos] & 2251799813685247L) >>> 7)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_______________]
((in[27 + inPos] & 2251799813685247L) >>> 15)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [____________________09876543_______________________]
((in[27 + inPos] & 2251799813685247L) >>> 23)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [____________87654321_______________________________]
((in[27 + inPos] & 2251799813685247L) >>> 31)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [____65432109_______________________________________]
((in[27 + inPos] & 2251799813685247L) >>> 39)) & 255);
out[178 + outPos] = (byte)((
// [____3210]
// [0987_______________________________________________]
((in[27 + inPos] & 2251799813685247L) >>> 47)
| // [7654____]
// [_______________________________________________3210]
((in[28 + inPos] & 2251799813685247L) << 4)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654____]
((in[28 + inPos] & 2251799813685247L) >>> 4)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432____________]
((in[28 + inPos] & 2251799813685247L) >>> 12)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [_______________________76543210____________________]
((in[28 + inPos] & 2251799813685247L) >>> 20)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [_______________54321098____________________________]
((in[28 + inPos] & 2251799813685247L) >>> 28)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [_______32109876____________________________________]
((in[28 + inPos] & 2251799813685247L) >>> 36)) & 255);
out[184 + outPos] = (byte)((
// [_6543210]
// [0987654____________________________________________]
((in[28 + inPos] & 2251799813685247L) >>> 44)
| // [7_______]
// [__________________________________________________0]
((in[29 + inPos] & 2251799813685247L) << 7)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321_]
((in[29 + inPos] & 2251799813685247L) >>> 1)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109_________]
((in[29 + inPos] & 2251799813685247L) >>> 9)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [__________________________43210987_________________]
((in[29 + inPos] & 2251799813685247L) >>> 17)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [__________________21098765_________________________]
((in[29 + inPos] & 2251799813685247L) >>> 25)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [__________09876543_________________________________]
((in[29 + inPos] & 2251799813685247L) >>> 33)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [__87654321_________________________________________]
((in[29 + inPos] & 2251799813685247L) >>> 41)) & 255);
out[191 + outPos] = (byte)((
// [______10]
// [09_________________________________________________]
((in[29 + inPos] & 2251799813685247L) >>> 49)
| // [765432__]
// [_____________________________________________543210]
((in[30 + inPos] & 2251799813685247L) << 2)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876______]
((in[30 + inPos] & 2251799813685247L) >>> 6)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654______________]
((in[30 + inPos] & 2251799813685247L) >>> 14)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [_____________________98765432______________________]
((in[30 + inPos] & 2251799813685247L) >>> 22)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [_____________76543210______________________________]
((in[30 + inPos] & 2251799813685247L) >>> 30)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [_____54321098______________________________________]
((in[30 + inPos] & 2251799813685247L) >>> 38)) & 255);
out[197 + outPos] = (byte)((
// [___43210]
// [09876______________________________________________]
((in[30 + inPos] & 2251799813685247L) >>> 46)
| // [765_____]
// [________________________________________________210]
((in[31 + inPos] & 2251799813685247L) << 5)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543___]
((in[31 + inPos] & 2251799813685247L) >>> 3)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [________________________________87654321___________]
((in[31 + inPos] & 2251799813685247L) >>> 11)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [________________________65432109___________________]
((in[31 + inPos] & 2251799813685247L) >>> 19)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [________________43210987___________________________]
((in[31 + inPos] & 2251799813685247L) >>> 27)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [________21098765___________________________________]
((in[31 + inPos] & 2251799813685247L) >>> 35)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [09876543___________________________________________]
((in[31 + inPos] & 2251799813685247L) >>> 43)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 2251799813685247L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in[ 6 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in[ 7 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in[ 8 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in[ 9 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in[10 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in[11 + inPos]) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in[12 + inPos]) << 45) & 2251799813685247L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in[14 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in[15 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in[16 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in[17 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in[18 + inPos]) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in[19 + inPos]) << 50) & 2251799813685247L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in[19 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in[20 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in[21 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in[22 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in[23 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in[24 + inPos]) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in[25 + inPos]) << 47) & 2251799813685247L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in[26 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in[27 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in[28 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in[29 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in[30 + inPos]) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in[31 + inPos]) << 44) & 2251799813685247L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in[31 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in[32 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in[33 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in[34 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in[35 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in[36 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in[37 + inPos]) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in[38 + inPos]) << 49) & 2251799813685247L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in[38 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in[39 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in[40 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in[41 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in[42 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in[43 + inPos]) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in[44 + inPos]) << 46) & 2251799813685247L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in[44 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in[45 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in[46 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in[47 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in[48 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in[49 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in[50 + inPos]) << 43) & 2251799813685247L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 2251799813685247L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in.get( 6 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in.get( 7 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in.get( 8 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in.get( 9 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in.get(10 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in.get(11 + inPos)) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in.get(12 + inPos)) << 45) & 2251799813685247L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in.get(14 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in.get(15 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in.get(16 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in.get(17 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in.get(18 + inPos)) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in.get(19 + inPos)) << 50) & 2251799813685247L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in.get(19 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in.get(20 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in.get(21 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in.get(22 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in.get(23 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in.get(24 + inPos)) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in.get(25 + inPos)) << 47) & 2251799813685247L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in.get(27 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in.get(28 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in.get(29 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in.get(30 + inPos)) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in.get(31 + inPos)) << 44) & 2251799813685247L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in.get(31 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in.get(32 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in.get(33 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in.get(34 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in.get(35 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in.get(36 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in.get(37 + inPos)) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in.get(38 + inPos)) << 49) & 2251799813685247L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in.get(38 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in.get(39 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in.get(40 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in.get(41 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in.get(42 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in.get(43 + inPos)) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in.get(44 + inPos)) << 46) & 2251799813685247L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in.get(44 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in.get(45 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in.get(46 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in.get(47 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in.get(48 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in.get(49 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in.get(50 + inPos)) << 43) & 2251799813685247L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 2251799813685247L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in[ 6 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in[ 7 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in[ 8 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in[ 9 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in[10 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in[11 + inPos]) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in[12 + inPos]) << 45) & 2251799813685247L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in[12 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in[13 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in[14 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in[15 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in[16 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in[17 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in[18 + inPos]) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in[19 + inPos]) << 50) & 2251799813685247L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in[19 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in[20 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in[21 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in[22 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in[23 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in[24 + inPos]) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in[25 + inPos]) << 47) & 2251799813685247L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in[25 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in[26 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in[27 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in[28 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in[29 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in[30 + inPos]) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in[31 + inPos]) << 44) & 2251799813685247L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in[31 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in[32 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in[33 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in[34 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in[35 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in[36 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in[37 + inPos]) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in[38 + inPos]) << 49) & 2251799813685247L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in[38 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in[39 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in[40 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in[41 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in[42 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in[43 + inPos]) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in[44 + inPos]) << 46) & 2251799813685247L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in[44 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in[45 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in[46 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in[47 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in[48 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in[49 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in[50 + inPos]) << 43) & 2251799813685247L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in[51 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in[52 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in[53 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in[54 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in[55 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in[56 + inPos]) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in[57 + inPos]) << 48) & 2251799813685247L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in[57 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in[58 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in[59 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in[60 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in[61 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in[62 + inPos]) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in[63 + inPos]) << 45) & 2251799813685247L);
out[10 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in[63 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in[64 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in[65 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in[66 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in[67 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in[68 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in[69 + inPos]) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in[70 + inPos]) << 50) & 2251799813685247L);
out[11 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in[70 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in[71 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in[72 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in[73 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in[74 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in[75 + inPos]) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in[76 + inPos]) << 47) & 2251799813685247L);
out[12 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in[76 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in[77 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in[78 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in[79 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in[80 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in[81 + inPos]) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in[82 + inPos]) << 44) & 2251799813685247L);
out[13 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in[82 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in[83 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in[84 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in[85 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in[86 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in[87 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in[88 + inPos]) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in[89 + inPos]) << 49) & 2251799813685247L);
out[14 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in[89 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in[90 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in[91 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in[92 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in[93 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in[94 + inPos]) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in[95 + inPos]) << 46) & 2251799813685247L);
out[15 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in[95 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in[96 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in[97 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in[98 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in[99 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in[100 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in[101 + inPos]) << 43) & 2251799813685247L);
out[16 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in[102 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in[103 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in[104 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in[105 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in[106 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in[107 + inPos]) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in[108 + inPos]) << 48) & 2251799813685247L);
out[17 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in[108 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in[109 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in[110 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in[111 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in[112 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in[113 + inPos]) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in[114 + inPos]) << 45) & 2251799813685247L);
out[18 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in[114 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in[115 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in[116 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in[117 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in[118 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in[119 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in[120 + inPos]) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in[121 + inPos]) << 50) & 2251799813685247L);
out[19 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in[121 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in[122 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in[123 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in[124 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in[125 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in[126 + inPos]) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in[127 + inPos]) << 47) & 2251799813685247L);
out[20 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in[127 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in[128 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in[129 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in[130 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in[131 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in[132 + inPos]) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in[133 + inPos]) << 44) & 2251799813685247L);
out[21 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in[133 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in[134 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in[135 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in[136 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in[137 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in[138 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in[139 + inPos]) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in[140 + inPos]) << 49) & 2251799813685247L);
out[22 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in[140 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in[141 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in[142 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in[143 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in[144 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in[145 + inPos]) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in[146 + inPos]) << 46) & 2251799813685247L);
out[23 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in[146 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in[147 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in[148 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in[149 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in[150 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in[151 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in[152 + inPos]) << 43) & 2251799813685247L);
out[24 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in[153 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in[154 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in[155 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in[156 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in[157 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in[158 + inPos]) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in[159 + inPos]) << 48) & 2251799813685247L);
out[25 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in[159 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in[160 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in[161 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in[162 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in[163 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in[164 + inPos]) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in[165 + inPos]) << 45) & 2251799813685247L);
out[26 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in[165 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in[166 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in[167 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in[168 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in[169 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in[170 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in[171 + inPos]) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in[172 + inPos]) << 50) & 2251799813685247L);
out[27 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in[172 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in[173 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in[174 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in[175 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in[176 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in[177 + inPos]) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in[178 + inPos]) << 47) & 2251799813685247L);
out[28 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in[178 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in[179 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in[180 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in[181 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in[182 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in[183 + inPos]) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in[184 + inPos]) << 44) & 2251799813685247L);
out[29 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in[184 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in[185 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in[186 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in[187 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in[188 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in[189 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in[190 + inPos]) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in[191 + inPos]) << 49) & 2251799813685247L);
out[30 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in[191 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in[192 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in[193 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in[194 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in[195 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in[196 + inPos]) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in[197 + inPos]) << 46) & 2251799813685247L);
out[31 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in[197 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in[198 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in[199 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in[200 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in[201 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in[202 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in[203 + inPos]) << 43) & 2251799813685247L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 2251799813685247L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in.get( 6 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in.get( 7 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in.get( 8 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in.get( 9 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in.get(10 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in.get(11 + inPos)) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in.get(12 + inPos)) << 45) & 2251799813685247L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in.get(12 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in.get(13 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in.get(14 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in.get(15 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in.get(16 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in.get(17 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in.get(18 + inPos)) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in.get(19 + inPos)) << 50) & 2251799813685247L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in.get(19 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in.get(20 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in.get(21 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in.get(22 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in.get(23 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in.get(24 + inPos)) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in.get(25 + inPos)) << 47) & 2251799813685247L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in.get(25 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in.get(26 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in.get(27 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in.get(28 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in.get(29 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in.get(30 + inPos)) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in.get(31 + inPos)) << 44) & 2251799813685247L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in.get(31 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in.get(32 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in.get(33 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in.get(34 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in.get(35 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in.get(36 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in.get(37 + inPos)) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in.get(38 + inPos)) << 49) & 2251799813685247L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in.get(38 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in.get(39 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in.get(40 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in.get(41 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in.get(42 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in.get(43 + inPos)) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in.get(44 + inPos)) << 46) & 2251799813685247L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in.get(44 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in.get(45 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in.get(46 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in.get(47 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in.get(48 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in.get(49 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in.get(50 + inPos)) << 43) & 2251799813685247L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in.get(51 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in.get(52 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in.get(53 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in.get(54 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in.get(55 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in.get(56 + inPos)) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in.get(57 + inPos)) << 48) & 2251799813685247L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in.get(57 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in.get(58 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in.get(59 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in.get(60 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in.get(61 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in.get(62 + inPos)) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in.get(63 + inPos)) << 45) & 2251799813685247L);
out[10 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in.get(63 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in.get(64 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in.get(65 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in.get(66 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in.get(67 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in.get(68 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in.get(69 + inPos)) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in.get(70 + inPos)) << 50) & 2251799813685247L);
out[11 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in.get(70 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in.get(71 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in.get(72 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in.get(73 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in.get(74 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in.get(75 + inPos)) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in.get(76 + inPos)) << 47) & 2251799813685247L);
out[12 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in.get(76 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in.get(77 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in.get(78 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in.get(79 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in.get(80 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in.get(81 + inPos)) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in.get(82 + inPos)) << 44) & 2251799813685247L);
out[13 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in.get(82 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in.get(83 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in.get(84 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in.get(85 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in.get(86 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in.get(87 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in.get(88 + inPos)) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in.get(89 + inPos)) << 49) & 2251799813685247L);
out[14 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in.get(89 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in.get(90 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in.get(91 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in.get(92 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in.get(93 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in.get(94 + inPos)) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in.get(95 + inPos)) << 46) & 2251799813685247L);
out[15 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in.get(95 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in.get(96 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in.get(97 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in.get(98 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in.get(99 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in.get(100 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in.get(101 + inPos)) << 43) & 2251799813685247L);
out[16 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in.get(102 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in.get(103 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in.get(104 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in.get(105 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in.get(106 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in.get(107 + inPos)) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in.get(108 + inPos)) << 48) & 2251799813685247L);
out[17 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in.get(108 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in.get(109 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in.get(110 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in.get(111 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in.get(112 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in.get(113 + inPos)) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in.get(114 + inPos)) << 45) & 2251799813685247L);
out[18 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in.get(114 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in.get(115 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in.get(116 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in.get(117 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in.get(118 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in.get(119 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in.get(120 + inPos)) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in.get(121 + inPos)) << 50) & 2251799813685247L);
out[19 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in.get(121 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in.get(122 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in.get(123 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in.get(124 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in.get(125 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in.get(126 + inPos)) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in.get(127 + inPos)) << 47) & 2251799813685247L);
out[20 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in.get(127 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in.get(128 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in.get(129 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in.get(130 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in.get(131 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in.get(132 + inPos)) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in.get(133 + inPos)) << 44) & 2251799813685247L);
out[21 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in.get(133 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in.get(134 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in.get(135 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in.get(136 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in.get(137 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in.get(138 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in.get(139 + inPos)) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in.get(140 + inPos)) << 49) & 2251799813685247L);
out[22 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in.get(140 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in.get(141 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in.get(142 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in.get(143 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in.get(144 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in.get(145 + inPos)) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in.get(146 + inPos)) << 46) & 2251799813685247L);
out[23 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in.get(146 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in.get(147 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in.get(148 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in.get(149 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in.get(150 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in.get(151 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in.get(152 + inPos)) << 43) & 2251799813685247L);
out[24 + outPos] =
// [76543210]
// [___________________________________________76543210]
((((long)in.get(153 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________54321098________]
((((long)in.get(154 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________32109876________________]
((((long)in.get(155 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________10987654________________________]
((((long)in.get(156 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________98765432________________________________]
((((long)in.get(157 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___76543210________________________________________]
((((long)in.get(158 + inPos)) << 40) & 281474976710655L)
| // [_____210]
// [098________________________________________________]
((((long)in.get(159 + inPos)) << 48) & 2251799813685247L);
out[25 + outPos] =
// [76543___]
// [______________________________________________43210]
((((long)in.get(159 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________21098765_____]
((((long)in.get(160 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________09876543_____________]
((((long)in.get(161 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________87654321_____________________]
((((long)in.get(162 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________65432109_____________________________]
((((long)in.get(163 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______43210987_____________________________________]
((((long)in.get(164 + inPos)) << 37) & 35184372088831L)
| // [__543210]
// [098765_____________________________________________]
((((long)in.get(165 + inPos)) << 45) & 2251799813685247L);
out[26 + outPos] =
// [76______]
// [_________________________________________________10]
((((long)in.get(165 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________98765432__]
((((long)in.get(166 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________76543210__________]
((((long)in.get(167 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________54321098__________________]
((((long)in.get(168 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________32109876__________________________]
((((long)in.get(169 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________10987654__________________________________]
((((long)in.get(170 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_98765432__________________________________________]
((((long)in.get(171 + inPos)) << 42) & 1125899906842623L)
| // [_______0]
// [0__________________________________________________]
((((long)in.get(172 + inPos)) << 50) & 2251799813685247L);
out[27 + outPos] =
// [7654321_]
// [____________________________________________6543210]
((((long)in.get(172 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________43210987_______]
((((long)in.get(173 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________21098765_______________]
((((long)in.get(174 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________09876543_______________________]
((((long)in.get(175 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________87654321_______________________________]
((((long)in.get(176 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____65432109_______________________________________]
((((long)in.get(177 + inPos)) << 39) & 140737488355327L)
| // [____3210]
// [0987_______________________________________________]
((((long)in.get(178 + inPos)) << 47) & 2251799813685247L);
out[28 + outPos] =
// [7654____]
// [_______________________________________________3210]
((((long)in.get(178 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________10987654____]
((((long)in.get(179 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________98765432____________]
((((long)in.get(180 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________76543210____________________]
((((long)in.get(181 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________54321098____________________________]
((((long)in.get(182 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______32109876____________________________________]
((((long)in.get(183 + inPos)) << 36) & 17592186044415L)
| // [_6543210]
// [0987654____________________________________________]
((((long)in.get(184 + inPos)) << 44) & 2251799813685247L);
out[29 + outPos] =
// [7_______]
// [__________________________________________________0]
((((long)in.get(184 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________87654321_]
((((long)in.get(185 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________65432109_________]
((((long)in.get(186 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________43210987_________________]
((((long)in.get(187 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________21098765_________________________]
((((long)in.get(188 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________09876543_________________________________]
((((long)in.get(189 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__87654321_________________________________________]
((((long)in.get(190 + inPos)) << 41) & 562949953421311L)
| // [______10]
// [09_________________________________________________]
((((long)in.get(191 + inPos)) << 49) & 2251799813685247L);
out[30 + outPos] =
// [765432__]
// [_____________________________________________543210]
((((long)in.get(191 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________32109876______]
((((long)in.get(192 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________10987654______________]
((((long)in.get(193 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________98765432______________________]
((((long)in.get(194 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________76543210______________________________]
((((long)in.get(195 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____54321098______________________________________]
((((long)in.get(196 + inPos)) << 38) & 70368744177663L)
| // [___43210]
// [09876______________________________________________]
((((long)in.get(197 + inPos)) << 46) & 2251799813685247L);
out[31 + outPos] =
// [765_____]
// [________________________________________________210]
((((long)in.get(197 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________09876543___]
((((long)in.get(198 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________87654321___________]
((((long)in.get(199 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________65432109___________________]
((((long)in.get(200 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________43210987___________________________]
((((long)in.get(201 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________21098765___________________________________]
((((long)in.get(202 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [09876543___________________________________________]
((((long)in.get(203 + inPos)) << 43) & 2251799813685247L);
}
}
private static final class Packer52 extends BytePackerForLong {
private Packer52() {
super(52);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 0 + inPos] & 4503599627370495L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 0 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 1 + inPos] & 4503599627370495L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 1 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 1 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 2 + inPos] & 4503599627370495L))) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 2 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 3 + inPos] & 4503599627370495L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 3 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 3 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 4 + inPos] & 4503599627370495L))) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 4 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 5 + inPos] & 4503599627370495L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 5 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 5 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 6 + inPos] & 4503599627370495L))) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 6 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 7 + inPos] & 4503599627370495L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 7 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 7 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 44)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 0 + inPos] & 4503599627370495L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 0 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 0 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 1 + inPos] & 4503599627370495L) << 4)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 1 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 1 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 1 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 2 + inPos] & 4503599627370495L))) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 2 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[19 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 2 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 3 + inPos] & 4503599627370495L) << 4)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 3 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 3 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 3 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 4 + inPos] & 4503599627370495L))) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 4 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[32 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 4 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 5 + inPos] & 4503599627370495L) << 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 5 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 5 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 5 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 6 + inPos] & 4503599627370495L))) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 6 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[45 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 6 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 7 + inPos] & 4503599627370495L) << 4)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 7 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 7 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 7 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[ 8 + inPos] & 4503599627370495L))) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[ 8 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[ 8 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[ 8 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[ 8 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[ 8 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[58 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[ 8 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[ 9 + inPos] & 4503599627370495L) << 4)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[ 9 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[ 9 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[ 9 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[ 9 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[ 9 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[ 9 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[10 + inPos] & 4503599627370495L))) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[10 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[10 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[10 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[10 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[10 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[71 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[10 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[11 + inPos] & 4503599627370495L) << 4)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[11 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[11 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[11 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[11 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[11 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[11 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[12 + inPos] & 4503599627370495L))) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[12 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[12 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[12 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[12 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[12 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[84 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[12 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[13 + inPos] & 4503599627370495L) << 4)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[13 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[13 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[13 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[13 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[13 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[13 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[14 + inPos] & 4503599627370495L))) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[14 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[14 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[14 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[14 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[14 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[97 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[14 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[15 + inPos] & 4503599627370495L) << 4)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[15 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[15 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[15 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[15 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[15 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[15 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[16 + inPos] & 4503599627370495L))) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[16 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[16 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[16 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[16 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[16 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[110 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[16 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[17 + inPos] & 4503599627370495L) << 4)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[17 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[17 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[17 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[17 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[17 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[17 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[18 + inPos] & 4503599627370495L))) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[18 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[18 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[18 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[18 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[18 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[123 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[18 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[19 + inPos] & 4503599627370495L) << 4)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[19 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[19 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[19 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[19 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[19 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[19 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[20 + inPos] & 4503599627370495L))) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[20 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[20 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[20 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[20 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[20 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[136 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[20 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[21 + inPos] & 4503599627370495L) << 4)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[21 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[21 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[21 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[21 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[21 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[21 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[22 + inPos] & 4503599627370495L))) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[22 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[22 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[22 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[22 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[22 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[149 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[22 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[23 + inPos] & 4503599627370495L) << 4)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[23 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[23 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[23 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[23 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[23 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[23 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[24 + inPos] & 4503599627370495L))) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[24 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[24 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[24 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[24 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[24 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[162 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[24 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[25 + inPos] & 4503599627370495L) << 4)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[25 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[25 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[25 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[25 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[25 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[25 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[26 + inPos] & 4503599627370495L))) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[26 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[26 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[26 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[26 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[26 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[175 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[26 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[27 + inPos] & 4503599627370495L) << 4)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[27 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[27 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[27 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[27 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[27 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[27 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[28 + inPos] & 4503599627370495L))) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[28 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[28 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[28 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[28 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[28 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[188 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[28 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[29 + inPos] & 4503599627370495L) << 4)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[29 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[29 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[29 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[29 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[29 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[29 + inPos] & 4503599627370495L) >>> 44)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210]
((in[30 + inPos] & 4503599627370495L))) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098________]
((in[30 + inPos] & 4503599627370495L) >>> 8)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [____________________________32109876________________]
((in[30 + inPos] & 4503599627370495L) >>> 16)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [____________________10987654________________________]
((in[30 + inPos] & 4503599627370495L) >>> 24)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [____________98765432________________________________]
((in[30 + inPos] & 4503599627370495L) >>> 32)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [____76543210________________________________________]
((in[30 + inPos] & 4503599627370495L) >>> 40)) & 255);
out[201 + outPos] = (byte)((
// [____3210]
// [1098________________________________________________]
((in[30 + inPos] & 4503599627370495L) >>> 48)
| // [7654____]
// [________________________________________________3210]
((in[31 + inPos] & 4503599627370495L) << 4)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654____]
((in[31 + inPos] & 4503599627370495L) >>> 4)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [________________________________98765432____________]
((in[31 + inPos] & 4503599627370495L) >>> 12)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [________________________76543210____________________]
((in[31 + inPos] & 4503599627370495L) >>> 20)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [________________54321098____________________________]
((in[31 + inPos] & 4503599627370495L) >>> 28)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [________32109876____________________________________]
((in[31 + inPos] & 4503599627370495L) >>> 36)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [10987654____________________________________________]
((in[31 + inPos] & 4503599627370495L) >>> 44)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 4503599627370495L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[ 8 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[ 9 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[10 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[11 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[12 + inPos]) << 44) & 4503599627370495L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[13 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[14 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[15 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[16 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[17 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[18 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[19 + inPos]) << 48) & 4503599627370495L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[22 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[23 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[24 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[25 + inPos]) << 44) & 4503599627370495L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[26 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[27 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[28 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[29 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[30 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[31 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[32 + inPos]) << 48) & 4503599627370495L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[33 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[34 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[35 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[36 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[37 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[38 + inPos]) << 44) & 4503599627370495L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[40 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[41 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[42 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[43 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[44 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[45 + inPos]) << 48) & 4503599627370495L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[47 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[48 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[49 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[50 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[51 + inPos]) << 44) & 4503599627370495L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 4503599627370495L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get( 8 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get( 9 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(10 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(11 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(12 + inPos)) << 44) & 4503599627370495L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(13 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(14 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(15 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(16 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(17 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(18 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(19 + inPos)) << 48) & 4503599627370495L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(22 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(23 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(24 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(25 + inPos)) << 44) & 4503599627370495L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(26 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(27 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(28 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(29 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(30 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(31 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(32 + inPos)) << 48) & 4503599627370495L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(33 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(34 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(35 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(36 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(37 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(38 + inPos)) << 44) & 4503599627370495L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(40 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(41 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(42 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(43 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(44 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(45 + inPos)) << 48) & 4503599627370495L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(47 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(48 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(49 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(50 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(51 + inPos)) << 44) & 4503599627370495L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 4503599627370495L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[ 6 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[ 7 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[ 8 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[ 9 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[10 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[11 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[12 + inPos]) << 44) & 4503599627370495L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[13 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[14 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[15 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[16 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[17 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[18 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[19 + inPos]) << 48) & 4503599627370495L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[19 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[20 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[21 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[22 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[23 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[24 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[25 + inPos]) << 44) & 4503599627370495L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[26 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[27 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[28 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[29 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[30 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[31 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[32 + inPos]) << 48) & 4503599627370495L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[32 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[33 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[34 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[35 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[36 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[37 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[38 + inPos]) << 44) & 4503599627370495L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[39 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[40 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[41 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[42 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[43 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[44 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[45 + inPos]) << 48) & 4503599627370495L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[45 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[46 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[47 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[48 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[49 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[50 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[51 + inPos]) << 44) & 4503599627370495L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[52 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[53 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[54 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[55 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[56 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[57 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[58 + inPos]) << 48) & 4503599627370495L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[58 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[59 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[60 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[61 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[62 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[63 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[64 + inPos]) << 44) & 4503599627370495L);
out[10 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[65 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[66 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[67 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[68 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[69 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[70 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[71 + inPos]) << 48) & 4503599627370495L);
out[11 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[71 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[72 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[73 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[74 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[75 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[76 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[77 + inPos]) << 44) & 4503599627370495L);
out[12 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[78 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[79 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[80 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[81 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[82 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[83 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[84 + inPos]) << 48) & 4503599627370495L);
out[13 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[84 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[85 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[86 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[87 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[88 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[89 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[90 + inPos]) << 44) & 4503599627370495L);
out[14 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[91 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[92 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[93 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[94 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[95 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[96 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[97 + inPos]) << 48) & 4503599627370495L);
out[15 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[97 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[98 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[99 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[100 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[101 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[102 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[103 + inPos]) << 44) & 4503599627370495L);
out[16 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[104 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[105 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[106 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[107 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[108 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[109 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[110 + inPos]) << 48) & 4503599627370495L);
out[17 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[110 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[111 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[112 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[113 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[114 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[115 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[116 + inPos]) << 44) & 4503599627370495L);
out[18 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[117 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[118 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[119 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[120 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[121 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[122 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[123 + inPos]) << 48) & 4503599627370495L);
out[19 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[123 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[124 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[125 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[126 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[127 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[128 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[129 + inPos]) << 44) & 4503599627370495L);
out[20 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[130 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[131 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[132 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[133 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[134 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[135 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[136 + inPos]) << 48) & 4503599627370495L);
out[21 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[136 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[137 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[138 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[139 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[140 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[141 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[142 + inPos]) << 44) & 4503599627370495L);
out[22 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[143 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[144 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[145 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[146 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[147 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[148 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[149 + inPos]) << 48) & 4503599627370495L);
out[23 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[149 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[150 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[151 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[152 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[153 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[154 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[155 + inPos]) << 44) & 4503599627370495L);
out[24 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[156 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[157 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[158 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[159 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[160 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[161 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[162 + inPos]) << 48) & 4503599627370495L);
out[25 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[162 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[163 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[164 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[165 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[166 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[167 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[168 + inPos]) << 44) & 4503599627370495L);
out[26 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[169 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[170 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[171 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[172 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[173 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[174 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[175 + inPos]) << 48) & 4503599627370495L);
out[27 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[175 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[176 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[177 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[178 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[179 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[180 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[181 + inPos]) << 44) & 4503599627370495L);
out[28 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[182 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[183 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[184 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[185 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[186 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[187 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[188 + inPos]) << 48) & 4503599627370495L);
out[29 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[188 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[189 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[190 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[191 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[192 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[193 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[194 + inPos]) << 44) & 4503599627370495L);
out[30 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in[195 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in[196 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in[197 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in[198 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in[199 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in[200 + inPos]) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in[201 + inPos]) << 48) & 4503599627370495L);
out[31 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in[201 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in[202 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in[203 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in[204 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in[205 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in[206 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in[207 + inPos]) << 44) & 4503599627370495L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 4503599627370495L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get( 6 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get( 7 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get( 8 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get( 9 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(10 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(11 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(12 + inPos)) << 44) & 4503599627370495L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(13 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(14 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(15 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(16 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(17 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(18 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(19 + inPos)) << 48) & 4503599627370495L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(19 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(20 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(21 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(22 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(23 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(24 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(25 + inPos)) << 44) & 4503599627370495L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(26 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(27 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(28 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(29 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(30 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(31 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(32 + inPos)) << 48) & 4503599627370495L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(32 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(33 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(34 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(35 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(36 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(37 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(38 + inPos)) << 44) & 4503599627370495L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(39 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(40 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(41 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(42 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(43 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(44 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(45 + inPos)) << 48) & 4503599627370495L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(45 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(46 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(47 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(48 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(49 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(50 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(51 + inPos)) << 44) & 4503599627370495L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(52 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(53 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(54 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(55 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(56 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(57 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(58 + inPos)) << 48) & 4503599627370495L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(58 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(59 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(60 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(61 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(62 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(63 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(64 + inPos)) << 44) & 4503599627370495L);
out[10 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(65 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(66 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(67 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(68 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(69 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(70 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(71 + inPos)) << 48) & 4503599627370495L);
out[11 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(71 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(72 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(73 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(74 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(75 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(76 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(77 + inPos)) << 44) & 4503599627370495L);
out[12 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(78 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(79 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(80 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(81 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(82 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(83 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(84 + inPos)) << 48) & 4503599627370495L);
out[13 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(84 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(85 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(86 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(87 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(88 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(89 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(90 + inPos)) << 44) & 4503599627370495L);
out[14 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(91 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(92 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(93 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(94 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(95 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(96 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(97 + inPos)) << 48) & 4503599627370495L);
out[15 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(97 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(98 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(99 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(100 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(101 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(102 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(103 + inPos)) << 44) & 4503599627370495L);
out[16 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(104 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(105 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(106 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(107 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(108 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(109 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(110 + inPos)) << 48) & 4503599627370495L);
out[17 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(110 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(111 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(112 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(113 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(114 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(115 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(116 + inPos)) << 44) & 4503599627370495L);
out[18 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(117 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(118 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(119 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(120 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(121 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(122 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(123 + inPos)) << 48) & 4503599627370495L);
out[19 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(123 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(124 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(125 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(126 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(127 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(128 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(129 + inPos)) << 44) & 4503599627370495L);
out[20 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(130 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(131 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(132 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(133 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(134 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(135 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(136 + inPos)) << 48) & 4503599627370495L);
out[21 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(136 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(137 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(138 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(139 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(140 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(141 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(142 + inPos)) << 44) & 4503599627370495L);
out[22 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(143 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(144 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(145 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(146 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(147 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(148 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(149 + inPos)) << 48) & 4503599627370495L);
out[23 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(149 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(150 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(151 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(152 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(153 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(154 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(155 + inPos)) << 44) & 4503599627370495L);
out[24 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(156 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(157 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(158 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(159 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(160 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(161 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(162 + inPos)) << 48) & 4503599627370495L);
out[25 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(162 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(163 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(164 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(165 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(166 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(167 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(168 + inPos)) << 44) & 4503599627370495L);
out[26 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(169 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(170 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(171 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(172 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(173 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(174 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(175 + inPos)) << 48) & 4503599627370495L);
out[27 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(175 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(176 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(177 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(178 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(179 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(180 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(181 + inPos)) << 44) & 4503599627370495L);
out[28 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(182 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(183 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(184 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(185 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(186 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(187 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(188 + inPos)) << 48) & 4503599627370495L);
out[29 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(188 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(189 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(190 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(191 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(192 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(193 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(194 + inPos)) << 44) & 4503599627370495L);
out[30 + outPos] =
// [76543210]
// [____________________________________________76543210]
((((long)in.get(195 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________54321098________]
((((long)in.get(196 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________32109876________________]
((((long)in.get(197 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________10987654________________________]
((((long)in.get(198 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________98765432________________________________]
((((long)in.get(199 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____76543210________________________________________]
((((long)in.get(200 + inPos)) << 40) & 281474976710655L)
| // [____3210]
// [1098________________________________________________]
((((long)in.get(201 + inPos)) << 48) & 4503599627370495L);
out[31 + outPos] =
// [7654____]
// [________________________________________________3210]
((((long)in.get(201 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________10987654____]
((((long)in.get(202 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________98765432____________]
((((long)in.get(203 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________76543210____________________]
((((long)in.get(204 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________54321098____________________________]
((((long)in.get(205 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________32109876____________________________________]
((((long)in.get(206 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [10987654____________________________________________]
((((long)in.get(207 + inPos)) << 44) & 4503599627370495L);
}
}
private static final class Packer53 extends BytePackerForLong {
private Packer53() {
super(53);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210]
((in[ 0 + inPos] & 9007199254740991L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098________]
((in[ 0 + inPos] & 9007199254740991L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________________10987654________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____________98765432________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_____76543210________________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [___43210]
// [21098________________________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 48)
| // [765_____]
// [__________________________________________________210]
((in[ 1 + inPos] & 9007199254740991L) << 5)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543___]
((in[ 1 + inPos] & 9007199254740991L) >>> 3)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321___________]
((in[ 1 + inPos] & 9007199254740991L) >>> 11)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________65432109___________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 19)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________43210987___________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 27)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________21098765___________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 35)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__09876543___________________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 43)) & 255);
out[13 + outPos] = (byte)((
// [______10]
// [21___________________________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 51)
| // [765432__]
// [_______________________________________________543210]
((in[ 2 + inPos] & 9007199254740991L) << 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876______]
((in[ 2 + inPos] & 9007199254740991L) >>> 6)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654______________]
((in[ 2 + inPos] & 9007199254740991L) >>> 14)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_______________________98765432______________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 22)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_______________76543210______________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 30)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______54321098______________________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 38)) & 255);
out[19 + outPos] = (byte)((
// [_6543210]
// [2109876______________________________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 46)
| // [7_______]
// [____________________________________________________0]
((in[ 3 + inPos] & 9007199254740991L) << 7)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321_]
((in[ 3 + inPos] & 9007199254740991L) >>> 1)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109_________]
((in[ 3 + inPos] & 9007199254740991L) >>> 9)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 17)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________21098765_________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 25)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________09876543_________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 33)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____87654321_________________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 41)) & 255);
out[26 + outPos] = (byte)((
// [____3210]
// [2109_________________________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 49)
| // [7654____]
// [_________________________________________________3210]
((in[ 4 + inPos] & 9007199254740991L) << 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654____]
((in[ 4 + inPos] & 9007199254740991L) >>> 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432____________]
((in[ 4 + inPos] & 9007199254740991L) >>> 12)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_________________________76543210____________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 20)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_________________54321098____________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 28)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________32109876____________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 36)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_10987654____________________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 44)) & 255);
out[33 + outPos] = (byte)((
// [_______0]
// [2____________________________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 52)
| // [7654321_]
// [______________________________________________6543210]
((in[ 5 + inPos] & 9007199254740991L) << 1)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_______]
((in[ 5 + inPos] & 9007199254740991L) >>> 7)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_______________]
((in[ 5 + inPos] & 9007199254740991L) >>> 15)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________________09876543_______________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 23)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______________87654321_______________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 31)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______65432109_______________________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 39)) & 255);
out[39 + outPos] = (byte)((
// [__543210]
// [210987_______________________________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 47)
| // [76______]
// [___________________________________________________10]
((in[ 6 + inPos] & 9007199254740991L) << 6)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432__]
((in[ 6 + inPos] & 9007199254740991L) >>> 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210__________]
((in[ 6 + inPos] & 9007199254740991L) >>> 10)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [___________________________54321098__________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 18)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [___________________32109876__________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 26)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [___________10987654__________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 34)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [___98765432__________________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 42)) & 255);
out[46 + outPos] = (byte)((
// [_____210]
// [210__________________________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 50)
| // [76543___]
// [________________________________________________43210]
((in[ 7 + inPos] & 9007199254740991L) << 3)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_____]
((in[ 7 + inPos] & 9007199254740991L) >>> 5)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_____________]
((in[ 7 + inPos] & 9007199254740991L) >>> 13)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________87654321_____________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 21)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________65432109_____________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 29)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________43210987_____________________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 37)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [21098765_____________________________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 45)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210]
((in[ 0 + inPos] & 9007199254740991L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098________]
((in[ 0 + inPos] & 9007199254740991L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________________10987654________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____________98765432________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_____76543210________________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [___43210]
// [21098________________________________________________]
((in[ 0 + inPos] & 9007199254740991L) >>> 48)
| // [765_____]
// [__________________________________________________210]
((in[ 1 + inPos] & 9007199254740991L) << 5)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543___]
((in[ 1 + inPos] & 9007199254740991L) >>> 3)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321___________]
((in[ 1 + inPos] & 9007199254740991L) >>> 11)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________65432109___________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 19)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________43210987___________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 27)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________21098765___________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 35)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__09876543___________________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 43)) & 255);
out[13 + outPos] = (byte)((
// [______10]
// [21___________________________________________________]
((in[ 1 + inPos] & 9007199254740991L) >>> 51)
| // [765432__]
// [_______________________________________________543210]
((in[ 2 + inPos] & 9007199254740991L) << 2)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876______]
((in[ 2 + inPos] & 9007199254740991L) >>> 6)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654______________]
((in[ 2 + inPos] & 9007199254740991L) >>> 14)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_______________________98765432______________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 22)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_______________76543210______________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 30)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______54321098______________________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 38)) & 255);
out[19 + outPos] = (byte)((
// [_6543210]
// [2109876______________________________________________]
((in[ 2 + inPos] & 9007199254740991L) >>> 46)
| // [7_______]
// [____________________________________________________0]
((in[ 3 + inPos] & 9007199254740991L) << 7)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321_]
((in[ 3 + inPos] & 9007199254740991L) >>> 1)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109_________]
((in[ 3 + inPos] & 9007199254740991L) >>> 9)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 17)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________21098765_________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 25)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________09876543_________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 33)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____87654321_________________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 41)) & 255);
out[26 + outPos] = (byte)((
// [____3210]
// [2109_________________________________________________]
((in[ 3 + inPos] & 9007199254740991L) >>> 49)
| // [7654____]
// [_________________________________________________3210]
((in[ 4 + inPos] & 9007199254740991L) << 4)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654____]
((in[ 4 + inPos] & 9007199254740991L) >>> 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432____________]
((in[ 4 + inPos] & 9007199254740991L) >>> 12)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_________________________76543210____________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 20)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_________________54321098____________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 28)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________32109876____________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 36)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_10987654____________________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 44)) & 255);
out[33 + outPos] = (byte)((
// [_______0]
// [2____________________________________________________]
((in[ 4 + inPos] & 9007199254740991L) >>> 52)
| // [7654321_]
// [______________________________________________6543210]
((in[ 5 + inPos] & 9007199254740991L) << 1)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_______]
((in[ 5 + inPos] & 9007199254740991L) >>> 7)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_______________]
((in[ 5 + inPos] & 9007199254740991L) >>> 15)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________________09876543_______________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 23)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______________87654321_______________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 31)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______65432109_______________________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 39)) & 255);
out[39 + outPos] = (byte)((
// [__543210]
// [210987_______________________________________________]
((in[ 5 + inPos] & 9007199254740991L) >>> 47)
| // [76______]
// [___________________________________________________10]
((in[ 6 + inPos] & 9007199254740991L) << 6)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432__]
((in[ 6 + inPos] & 9007199254740991L) >>> 2)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210__________]
((in[ 6 + inPos] & 9007199254740991L) >>> 10)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [___________________________54321098__________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 18)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [___________________32109876__________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 26)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [___________10987654__________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 34)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [___98765432__________________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 42)) & 255);
out[46 + outPos] = (byte)((
// [_____210]
// [210__________________________________________________]
((in[ 6 + inPos] & 9007199254740991L) >>> 50)
| // [76543___]
// [________________________________________________43210]
((in[ 7 + inPos] & 9007199254740991L) << 3)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_____]
((in[ 7 + inPos] & 9007199254740991L) >>> 5)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_____________]
((in[ 7 + inPos] & 9007199254740991L) >>> 13)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________87654321_____________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 21)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________65432109_____________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 29)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________43210987_____________________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 37)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [21098765_____________________________________________]
((in[ 7 + inPos] & 9007199254740991L) >>> 45)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210]
((in[ 8 + inPos] & 9007199254740991L))) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098________]
((in[ 8 + inPos] & 9007199254740991L) >>> 8)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876________________]
((in[ 8 + inPos] & 9007199254740991L) >>> 16)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [_____________________10987654________________________]
((in[ 8 + inPos] & 9007199254740991L) >>> 24)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_____________98765432________________________________]
((in[ 8 + inPos] & 9007199254740991L) >>> 32)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_____76543210________________________________________]
((in[ 8 + inPos] & 9007199254740991L) >>> 40)) & 255);
out[59 + outPos] = (byte)((
// [___43210]
// [21098________________________________________________]
((in[ 8 + inPos] & 9007199254740991L) >>> 48)
| // [765_____]
// [__________________________________________________210]
((in[ 9 + inPos] & 9007199254740991L) << 5)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543___]
((in[ 9 + inPos] & 9007199254740991L) >>> 3)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321___________]
((in[ 9 + inPos] & 9007199254740991L) >>> 11)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__________________________65432109___________________]
((in[ 9 + inPos] & 9007199254740991L) >>> 19)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [__________________43210987___________________________]
((in[ 9 + inPos] & 9007199254740991L) >>> 27)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__________21098765___________________________________]
((in[ 9 + inPos] & 9007199254740991L) >>> 35)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [__09876543___________________________________________]
((in[ 9 + inPos] & 9007199254740991L) >>> 43)) & 255);
out[66 + outPos] = (byte)((
// [______10]
// [21___________________________________________________]
((in[ 9 + inPos] & 9007199254740991L) >>> 51)
| // [765432__]
// [_______________________________________________543210]
((in[10 + inPos] & 9007199254740991L) << 2)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876______]
((in[10 + inPos] & 9007199254740991L) >>> 6)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654______________]
((in[10 + inPos] & 9007199254740991L) >>> 14)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______________________98765432______________________]
((in[10 + inPos] & 9007199254740991L) >>> 22)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_______________76543210______________________________]
((in[10 + inPos] & 9007199254740991L) >>> 30)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [_______54321098______________________________________]
((in[10 + inPos] & 9007199254740991L) >>> 38)) & 255);
out[72 + outPos] = (byte)((
// [_6543210]
// [2109876______________________________________________]
((in[10 + inPos] & 9007199254740991L) >>> 46)
| // [7_______]
// [____________________________________________________0]
((in[11 + inPos] & 9007199254740991L) << 7)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321_]
((in[11 + inPos] & 9007199254740991L) >>> 1)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109_________]
((in[11 + inPos] & 9007199254740991L) >>> 9)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_________________]
((in[11 + inPos] & 9007199254740991L) >>> 17)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____________________21098765_________________________]
((in[11 + inPos] & 9007199254740991L) >>> 25)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________09876543_________________________________]
((in[11 + inPos] & 9007199254740991L) >>> 33)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____87654321_________________________________________]
((in[11 + inPos] & 9007199254740991L) >>> 41)) & 255);
out[79 + outPos] = (byte)((
// [____3210]
// [2109_________________________________________________]
((in[11 + inPos] & 9007199254740991L) >>> 49)
| // [7654____]
// [_________________________________________________3210]
((in[12 + inPos] & 9007199254740991L) << 4)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654____]
((in[12 + inPos] & 9007199254740991L) >>> 4)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432____________]
((in[12 + inPos] & 9007199254740991L) >>> 12)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [_________________________76543210____________________]
((in[12 + inPos] & 9007199254740991L) >>> 20)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [_________________54321098____________________________]
((in[12 + inPos] & 9007199254740991L) >>> 28)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_________32109876____________________________________]
((in[12 + inPos] & 9007199254740991L) >>> 36)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_10987654____________________________________________]
((in[12 + inPos] & 9007199254740991L) >>> 44)) & 255);
out[86 + outPos] = (byte)((
// [_______0]
// [2____________________________________________________]
((in[12 + inPos] & 9007199254740991L) >>> 52)
| // [7654321_]
// [______________________________________________6543210]
((in[13 + inPos] & 9007199254740991L) << 1)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_______]
((in[13 + inPos] & 9007199254740991L) >>> 7)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_______________]
((in[13 + inPos] & 9007199254740991L) >>> 15)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [______________________09876543_______________________]
((in[13 + inPos] & 9007199254740991L) >>> 23)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [______________87654321_______________________________]
((in[13 + inPos] & 9007199254740991L) >>> 31)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [______65432109_______________________________________]
((in[13 + inPos] & 9007199254740991L) >>> 39)) & 255);
out[92 + outPos] = (byte)((
// [__543210]
// [210987_______________________________________________]
((in[13 + inPos] & 9007199254740991L) >>> 47)
| // [76______]
// [___________________________________________________10]
((in[14 + inPos] & 9007199254740991L) << 6)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432__]
((in[14 + inPos] & 9007199254740991L) >>> 2)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210__________]
((in[14 + inPos] & 9007199254740991L) >>> 10)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [___________________________54321098__________________]
((in[14 + inPos] & 9007199254740991L) >>> 18)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [___________________32109876__________________________]
((in[14 + inPos] & 9007199254740991L) >>> 26)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [___________10987654__________________________________]
((in[14 + inPos] & 9007199254740991L) >>> 34)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [___98765432__________________________________________]
((in[14 + inPos] & 9007199254740991L) >>> 42)) & 255);
out[99 + outPos] = (byte)((
// [_____210]
// [210__________________________________________________]
((in[14 + inPos] & 9007199254740991L) >>> 50)
| // [76543___]
// [________________________________________________43210]
((in[15 + inPos] & 9007199254740991L) << 3)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_____]
((in[15 + inPos] & 9007199254740991L) >>> 5)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_____________]
((in[15 + inPos] & 9007199254740991L) >>> 13)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________________87654321_____________________]
((in[15 + inPos] & 9007199254740991L) >>> 21)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________________65432109_____________________________]
((in[15 + inPos] & 9007199254740991L) >>> 29)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________43210987_____________________________________]
((in[15 + inPos] & 9007199254740991L) >>> 37)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [21098765_____________________________________________]
((in[15 + inPos] & 9007199254740991L) >>> 45)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210]
((in[16 + inPos] & 9007199254740991L))) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098________]
((in[16 + inPos] & 9007199254740991L) >>> 8)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876________________]
((in[16 + inPos] & 9007199254740991L) >>> 16)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [_____________________10987654________________________]
((in[16 + inPos] & 9007199254740991L) >>> 24)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [_____________98765432________________________________]
((in[16 + inPos] & 9007199254740991L) >>> 32)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_____76543210________________________________________]
((in[16 + inPos] & 9007199254740991L) >>> 40)) & 255);
out[112 + outPos] = (byte)((
// [___43210]
// [21098________________________________________________]
((in[16 + inPos] & 9007199254740991L) >>> 48)
| // [765_____]
// [__________________________________________________210]
((in[17 + inPos] & 9007199254740991L) << 5)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543___]
((in[17 + inPos] & 9007199254740991L) >>> 3)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321___________]
((in[17 + inPos] & 9007199254740991L) >>> 11)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [__________________________65432109___________________]
((in[17 + inPos] & 9007199254740991L) >>> 19)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [__________________43210987___________________________]
((in[17 + inPos] & 9007199254740991L) >>> 27)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [__________21098765___________________________________]
((in[17 + inPos] & 9007199254740991L) >>> 35)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [__09876543___________________________________________]
((in[17 + inPos] & 9007199254740991L) >>> 43)) & 255);
out[119 + outPos] = (byte)((
// [______10]
// [21___________________________________________________]
((in[17 + inPos] & 9007199254740991L) >>> 51)
| // [765432__]
// [_______________________________________________543210]
((in[18 + inPos] & 9007199254740991L) << 2)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876______]
((in[18 + inPos] & 9007199254740991L) >>> 6)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654______________]
((in[18 + inPos] & 9007199254740991L) >>> 14)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [_______________________98765432______________________]
((in[18 + inPos] & 9007199254740991L) >>> 22)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_______________76543210______________________________]
((in[18 + inPos] & 9007199254740991L) >>> 30)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_______54321098______________________________________]
((in[18 + inPos] & 9007199254740991L) >>> 38)) & 255);
out[125 + outPos] = (byte)((
// [_6543210]
// [2109876______________________________________________]
((in[18 + inPos] & 9007199254740991L) >>> 46)
| // [7_______]
// [____________________________________________________0]
((in[19 + inPos] & 9007199254740991L) << 7)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321_]
((in[19 + inPos] & 9007199254740991L) >>> 1)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109_________]
((in[19 + inPos] & 9007199254740991L) >>> 9)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_________________]
((in[19 + inPos] & 9007199254740991L) >>> 17)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [____________________21098765_________________________]
((in[19 + inPos] & 9007199254740991L) >>> 25)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [____________09876543_________________________________]
((in[19 + inPos] & 9007199254740991L) >>> 33)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [____87654321_________________________________________]
((in[19 + inPos] & 9007199254740991L) >>> 41)) & 255);
out[132 + outPos] = (byte)((
// [____3210]
// [2109_________________________________________________]
((in[19 + inPos] & 9007199254740991L) >>> 49)
| // [7654____]
// [_________________________________________________3210]
((in[20 + inPos] & 9007199254740991L) << 4)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654____]
((in[20 + inPos] & 9007199254740991L) >>> 4)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432____________]
((in[20 + inPos] & 9007199254740991L) >>> 12)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [_________________________76543210____________________]
((in[20 + inPos] & 9007199254740991L) >>> 20)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [_________________54321098____________________________]
((in[20 + inPos] & 9007199254740991L) >>> 28)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [_________32109876____________________________________]
((in[20 + inPos] & 9007199254740991L) >>> 36)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [_10987654____________________________________________]
((in[20 + inPos] & 9007199254740991L) >>> 44)) & 255);
out[139 + outPos] = (byte)((
// [_______0]
// [2____________________________________________________]
((in[20 + inPos] & 9007199254740991L) >>> 52)
| // [7654321_]
// [______________________________________________6543210]
((in[21 + inPos] & 9007199254740991L) << 1)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_______]
((in[21 + inPos] & 9007199254740991L) >>> 7)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_______________]
((in[21 + inPos] & 9007199254740991L) >>> 15)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [______________________09876543_______________________]
((in[21 + inPos] & 9007199254740991L) >>> 23)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [______________87654321_______________________________]
((in[21 + inPos] & 9007199254740991L) >>> 31)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [______65432109_______________________________________]
((in[21 + inPos] & 9007199254740991L) >>> 39)) & 255);
out[145 + outPos] = (byte)((
// [__543210]
// [210987_______________________________________________]
((in[21 + inPos] & 9007199254740991L) >>> 47)
| // [76______]
// [___________________________________________________10]
((in[22 + inPos] & 9007199254740991L) << 6)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432__]
((in[22 + inPos] & 9007199254740991L) >>> 2)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210__________]
((in[22 + inPos] & 9007199254740991L) >>> 10)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [___________________________54321098__________________]
((in[22 + inPos] & 9007199254740991L) >>> 18)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [___________________32109876__________________________]
((in[22 + inPos] & 9007199254740991L) >>> 26)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [___________10987654__________________________________]
((in[22 + inPos] & 9007199254740991L) >>> 34)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [___98765432__________________________________________]
((in[22 + inPos] & 9007199254740991L) >>> 42)) & 255);
out[152 + outPos] = (byte)((
// [_____210]
// [210__________________________________________________]
((in[22 + inPos] & 9007199254740991L) >>> 50)
| // [76543___]
// [________________________________________________43210]
((in[23 + inPos] & 9007199254740991L) << 3)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_____]
((in[23 + inPos] & 9007199254740991L) >>> 5)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_____________]
((in[23 + inPos] & 9007199254740991L) >>> 13)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [________________________87654321_____________________]
((in[23 + inPos] & 9007199254740991L) >>> 21)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________65432109_____________________________]
((in[23 + inPos] & 9007199254740991L) >>> 29)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________43210987_____________________________________]
((in[23 + inPos] & 9007199254740991L) >>> 37)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [21098765_____________________________________________]
((in[23 + inPos] & 9007199254740991L) >>> 45)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210]
((in[24 + inPos] & 9007199254740991L))) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098________]
((in[24 + inPos] & 9007199254740991L) >>> 8)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876________________]
((in[24 + inPos] & 9007199254740991L) >>> 16)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [_____________________10987654________________________]
((in[24 + inPos] & 9007199254740991L) >>> 24)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [_____________98765432________________________________]
((in[24 + inPos] & 9007199254740991L) >>> 32)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [_____76543210________________________________________]
((in[24 + inPos] & 9007199254740991L) >>> 40)) & 255);
out[165 + outPos] = (byte)((
// [___43210]
// [21098________________________________________________]
((in[24 + inPos] & 9007199254740991L) >>> 48)
| // [765_____]
// [__________________________________________________210]
((in[25 + inPos] & 9007199254740991L) << 5)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543___]
((in[25 + inPos] & 9007199254740991L) >>> 3)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321___________]
((in[25 + inPos] & 9007199254740991L) >>> 11)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [__________________________65432109___________________]
((in[25 + inPos] & 9007199254740991L) >>> 19)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [__________________43210987___________________________]
((in[25 + inPos] & 9007199254740991L) >>> 27)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [__________21098765___________________________________]
((in[25 + inPos] & 9007199254740991L) >>> 35)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [__09876543___________________________________________]
((in[25 + inPos] & 9007199254740991L) >>> 43)) & 255);
out[172 + outPos] = (byte)((
// [______10]
// [21___________________________________________________]
((in[25 + inPos] & 9007199254740991L) >>> 51)
| // [765432__]
// [_______________________________________________543210]
((in[26 + inPos] & 9007199254740991L) << 2)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876______]
((in[26 + inPos] & 9007199254740991L) >>> 6)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654______________]
((in[26 + inPos] & 9007199254740991L) >>> 14)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [_______________________98765432______________________]
((in[26 + inPos] & 9007199254740991L) >>> 22)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [_______________76543210______________________________]
((in[26 + inPos] & 9007199254740991L) >>> 30)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [_______54321098______________________________________]
((in[26 + inPos] & 9007199254740991L) >>> 38)) & 255);
out[178 + outPos] = (byte)((
// [_6543210]
// [2109876______________________________________________]
((in[26 + inPos] & 9007199254740991L) >>> 46)
| // [7_______]
// [____________________________________________________0]
((in[27 + inPos] & 9007199254740991L) << 7)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321_]
((in[27 + inPos] & 9007199254740991L) >>> 1)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109_________]
((in[27 + inPos] & 9007199254740991L) >>> 9)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [____________________________43210987_________________]
((in[27 + inPos] & 9007199254740991L) >>> 17)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [____________________21098765_________________________]
((in[27 + inPos] & 9007199254740991L) >>> 25)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [____________09876543_________________________________]
((in[27 + inPos] & 9007199254740991L) >>> 33)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [____87654321_________________________________________]
((in[27 + inPos] & 9007199254740991L) >>> 41)) & 255);
out[185 + outPos] = (byte)((
// [____3210]
// [2109_________________________________________________]
((in[27 + inPos] & 9007199254740991L) >>> 49)
| // [7654____]
// [_________________________________________________3210]
((in[28 + inPos] & 9007199254740991L) << 4)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654____]
((in[28 + inPos] & 9007199254740991L) >>> 4)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432____________]
((in[28 + inPos] & 9007199254740991L) >>> 12)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [_________________________76543210____________________]
((in[28 + inPos] & 9007199254740991L) >>> 20)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [_________________54321098____________________________]
((in[28 + inPos] & 9007199254740991L) >>> 28)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [_________32109876____________________________________]
((in[28 + inPos] & 9007199254740991L) >>> 36)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [_10987654____________________________________________]
((in[28 + inPos] & 9007199254740991L) >>> 44)) & 255);
out[192 + outPos] = (byte)((
// [_______0]
// [2____________________________________________________]
((in[28 + inPos] & 9007199254740991L) >>> 52)
| // [7654321_]
// [______________________________________________6543210]
((in[29 + inPos] & 9007199254740991L) << 1)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_______]
((in[29 + inPos] & 9007199254740991L) >>> 7)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_______________]
((in[29 + inPos] & 9007199254740991L) >>> 15)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [______________________09876543_______________________]
((in[29 + inPos] & 9007199254740991L) >>> 23)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [______________87654321_______________________________]
((in[29 + inPos] & 9007199254740991L) >>> 31)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [______65432109_______________________________________]
((in[29 + inPos] & 9007199254740991L) >>> 39)) & 255);
out[198 + outPos] = (byte)((
// [__543210]
// [210987_______________________________________________]
((in[29 + inPos] & 9007199254740991L) >>> 47)
| // [76______]
// [___________________________________________________10]
((in[30 + inPos] & 9007199254740991L) << 6)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432__]
((in[30 + inPos] & 9007199254740991L) >>> 2)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210__________]
((in[30 + inPos] & 9007199254740991L) >>> 10)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [___________________________54321098__________________]
((in[30 + inPos] & 9007199254740991L) >>> 18)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [___________________32109876__________________________]
((in[30 + inPos] & 9007199254740991L) >>> 26)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [___________10987654__________________________________]
((in[30 + inPos] & 9007199254740991L) >>> 34)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [___98765432__________________________________________]
((in[30 + inPos] & 9007199254740991L) >>> 42)) & 255);
out[205 + outPos] = (byte)((
// [_____210]
// [210__________________________________________________]
((in[30 + inPos] & 9007199254740991L) >>> 50)
| // [76543___]
// [________________________________________________43210]
((in[31 + inPos] & 9007199254740991L) << 3)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_____]
((in[31 + inPos] & 9007199254740991L) >>> 5)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_____________]
((in[31 + inPos] & 9007199254740991L) >>> 13)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [________________________87654321_____________________]
((in[31 + inPos] & 9007199254740991L) >>> 21)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [________________65432109_____________________________]
((in[31 + inPos] & 9007199254740991L) >>> 29)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [________43210987_____________________________________]
((in[31 + inPos] & 9007199254740991L) >>> 37)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [21098765_____________________________________________]
((in[31 + inPos] & 9007199254740991L) >>> 45)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 9007199254740991L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in[ 6 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in[ 7 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in[ 8 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in[ 9 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in[10 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in[11 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in[12 + inPos]) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in[13 + inPos]) << 51) & 9007199254740991L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in[13 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in[14 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in[15 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in[16 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in[17 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in[18 + inPos]) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in[19 + inPos]) << 46) & 9007199254740991L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in[19 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in[20 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in[21 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in[22 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in[23 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in[24 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in[25 + inPos]) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in[26 + inPos]) << 49) & 9007199254740991L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in[26 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in[27 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in[28 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in[29 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in[30 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in[31 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in[32 + inPos]) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in[33 + inPos]) << 52) & 9007199254740991L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in[33 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in[34 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in[35 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in[36 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in[37 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in[38 + inPos]) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in[39 + inPos]) << 47) & 9007199254740991L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in[39 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in[40 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in[41 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in[42 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in[43 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in[44 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in[45 + inPos]) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in[46 + inPos]) << 50) & 9007199254740991L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in[46 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in[47 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in[48 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in[49 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in[50 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in[51 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in[52 + inPos]) << 45) & 9007199254740991L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 9007199254740991L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in.get( 6 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in.get( 7 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in.get( 8 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in.get( 9 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in.get(10 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in.get(11 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in.get(12 + inPos)) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in.get(13 + inPos)) << 51) & 9007199254740991L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in.get(13 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in.get(14 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in.get(15 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in.get(16 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in.get(17 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in.get(18 + inPos)) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in.get(19 + inPos)) << 46) & 9007199254740991L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in.get(19 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in.get(20 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in.get(21 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in.get(22 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in.get(23 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in.get(24 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in.get(25 + inPos)) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in.get(26 + inPos)) << 49) & 9007199254740991L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in.get(26 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in.get(27 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in.get(28 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in.get(29 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in.get(30 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in.get(31 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in.get(32 + inPos)) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in.get(33 + inPos)) << 52) & 9007199254740991L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in.get(33 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in.get(34 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in.get(35 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in.get(36 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in.get(37 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in.get(38 + inPos)) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in.get(39 + inPos)) << 47) & 9007199254740991L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in.get(39 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in.get(40 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in.get(41 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in.get(42 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in.get(43 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in.get(44 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in.get(45 + inPos)) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in.get(46 + inPos)) << 50) & 9007199254740991L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in.get(46 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in.get(47 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in.get(48 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in.get(49 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in.get(50 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in.get(51 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in.get(52 + inPos)) << 45) & 9007199254740991L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 9007199254740991L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in[ 6 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in[ 7 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in[ 8 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in[ 9 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in[10 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in[11 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in[12 + inPos]) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in[13 + inPos]) << 51) & 9007199254740991L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in[13 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in[14 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in[15 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in[16 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in[17 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in[18 + inPos]) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in[19 + inPos]) << 46) & 9007199254740991L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in[19 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in[20 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in[21 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in[22 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in[23 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in[24 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in[25 + inPos]) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in[26 + inPos]) << 49) & 9007199254740991L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in[26 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in[27 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in[28 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in[29 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in[30 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in[31 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in[32 + inPos]) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in[33 + inPos]) << 52) & 9007199254740991L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in[33 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in[34 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in[35 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in[36 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in[37 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in[38 + inPos]) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in[39 + inPos]) << 47) & 9007199254740991L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in[39 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in[40 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in[41 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in[42 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in[43 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in[44 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in[45 + inPos]) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in[46 + inPos]) << 50) & 9007199254740991L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in[46 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in[47 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in[48 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in[49 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in[50 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in[51 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in[52 + inPos]) << 45) & 9007199254740991L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in[53 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in[54 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in[55 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in[56 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in[57 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in[58 + inPos]) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in[59 + inPos]) << 48) & 9007199254740991L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in[59 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in[60 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in[61 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in[62 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in[63 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in[64 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in[65 + inPos]) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in[66 + inPos]) << 51) & 9007199254740991L);
out[10 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in[66 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in[67 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in[68 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in[69 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in[70 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in[71 + inPos]) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in[72 + inPos]) << 46) & 9007199254740991L);
out[11 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in[72 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in[73 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in[74 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in[75 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in[76 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in[77 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in[78 + inPos]) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in[79 + inPos]) << 49) & 9007199254740991L);
out[12 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in[79 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in[80 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in[81 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in[82 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in[83 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in[84 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in[85 + inPos]) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in[86 + inPos]) << 52) & 9007199254740991L);
out[13 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in[86 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in[87 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in[88 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in[89 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in[90 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in[91 + inPos]) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in[92 + inPos]) << 47) & 9007199254740991L);
out[14 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in[92 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in[93 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in[94 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in[95 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in[96 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in[97 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in[98 + inPos]) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in[99 + inPos]) << 50) & 9007199254740991L);
out[15 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in[99 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in[100 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in[101 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in[102 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in[103 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in[104 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in[105 + inPos]) << 45) & 9007199254740991L);
out[16 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in[106 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in[107 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in[108 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in[109 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in[110 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in[111 + inPos]) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in[112 + inPos]) << 48) & 9007199254740991L);
out[17 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in[112 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in[113 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in[114 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in[115 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in[116 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in[117 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in[118 + inPos]) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in[119 + inPos]) << 51) & 9007199254740991L);
out[18 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in[119 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in[120 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in[121 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in[122 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in[123 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in[124 + inPos]) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in[125 + inPos]) << 46) & 9007199254740991L);
out[19 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in[125 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in[126 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in[127 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in[128 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in[129 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in[130 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in[131 + inPos]) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in[132 + inPos]) << 49) & 9007199254740991L);
out[20 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in[132 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in[133 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in[134 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in[135 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in[136 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in[137 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in[138 + inPos]) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in[139 + inPos]) << 52) & 9007199254740991L);
out[21 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in[139 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in[140 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in[141 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in[142 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in[143 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in[144 + inPos]) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in[145 + inPos]) << 47) & 9007199254740991L);
out[22 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in[145 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in[146 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in[147 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in[148 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in[149 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in[150 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in[151 + inPos]) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in[152 + inPos]) << 50) & 9007199254740991L);
out[23 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in[152 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in[153 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in[154 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in[155 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in[156 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in[157 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in[158 + inPos]) << 45) & 9007199254740991L);
out[24 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in[159 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in[160 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in[161 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in[162 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in[163 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in[164 + inPos]) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in[165 + inPos]) << 48) & 9007199254740991L);
out[25 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in[165 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in[166 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in[167 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in[168 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in[169 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in[170 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in[171 + inPos]) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in[172 + inPos]) << 51) & 9007199254740991L);
out[26 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in[172 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in[173 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in[174 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in[175 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in[176 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in[177 + inPos]) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in[178 + inPos]) << 46) & 9007199254740991L);
out[27 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in[178 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in[179 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in[180 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in[181 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in[182 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in[183 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in[184 + inPos]) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in[185 + inPos]) << 49) & 9007199254740991L);
out[28 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in[185 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in[186 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in[187 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in[188 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in[189 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in[190 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in[191 + inPos]) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in[192 + inPos]) << 52) & 9007199254740991L);
out[29 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in[192 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in[193 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in[194 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in[195 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in[196 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in[197 + inPos]) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in[198 + inPos]) << 47) & 9007199254740991L);
out[30 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in[198 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in[199 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in[200 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in[201 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in[202 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in[203 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in[204 + inPos]) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in[205 + inPos]) << 50) & 9007199254740991L);
out[31 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in[205 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in[206 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in[207 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in[208 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in[209 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in[210 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in[211 + inPos]) << 45) & 9007199254740991L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 9007199254740991L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in.get( 6 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in.get( 7 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in.get( 8 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in.get( 9 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in.get(10 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in.get(11 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in.get(12 + inPos)) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in.get(13 + inPos)) << 51) & 9007199254740991L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in.get(13 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in.get(14 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in.get(15 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in.get(16 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in.get(17 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in.get(18 + inPos)) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in.get(19 + inPos)) << 46) & 9007199254740991L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in.get(19 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in.get(20 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in.get(21 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in.get(22 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in.get(23 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in.get(24 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in.get(25 + inPos)) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in.get(26 + inPos)) << 49) & 9007199254740991L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in.get(26 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in.get(27 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in.get(28 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in.get(29 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in.get(30 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in.get(31 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in.get(32 + inPos)) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in.get(33 + inPos)) << 52) & 9007199254740991L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in.get(33 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in.get(34 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in.get(35 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in.get(36 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in.get(37 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in.get(38 + inPos)) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in.get(39 + inPos)) << 47) & 9007199254740991L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in.get(39 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in.get(40 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in.get(41 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in.get(42 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in.get(43 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in.get(44 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in.get(45 + inPos)) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in.get(46 + inPos)) << 50) & 9007199254740991L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in.get(46 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in.get(47 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in.get(48 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in.get(49 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in.get(50 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in.get(51 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in.get(52 + inPos)) << 45) & 9007199254740991L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in.get(53 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in.get(54 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in.get(55 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in.get(56 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in.get(57 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in.get(58 + inPos)) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in.get(59 + inPos)) << 48) & 9007199254740991L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in.get(59 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in.get(60 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in.get(61 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in.get(62 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in.get(63 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in.get(64 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in.get(65 + inPos)) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in.get(66 + inPos)) << 51) & 9007199254740991L);
out[10 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in.get(66 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in.get(67 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in.get(68 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in.get(69 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in.get(70 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in.get(71 + inPos)) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in.get(72 + inPos)) << 46) & 9007199254740991L);
out[11 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in.get(72 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in.get(73 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in.get(74 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in.get(75 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in.get(76 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in.get(77 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in.get(78 + inPos)) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in.get(79 + inPos)) << 49) & 9007199254740991L);
out[12 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in.get(79 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in.get(80 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in.get(81 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in.get(82 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in.get(83 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in.get(84 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in.get(85 + inPos)) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in.get(86 + inPos)) << 52) & 9007199254740991L);
out[13 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in.get(86 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in.get(87 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in.get(88 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in.get(89 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in.get(90 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in.get(91 + inPos)) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in.get(92 + inPos)) << 47) & 9007199254740991L);
out[14 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in.get(92 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in.get(93 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in.get(94 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in.get(95 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in.get(96 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in.get(97 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in.get(98 + inPos)) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in.get(99 + inPos)) << 50) & 9007199254740991L);
out[15 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in.get(99 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in.get(100 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in.get(101 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in.get(102 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in.get(103 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in.get(104 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in.get(105 + inPos)) << 45) & 9007199254740991L);
out[16 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in.get(106 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in.get(107 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in.get(108 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in.get(109 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in.get(110 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in.get(111 + inPos)) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in.get(112 + inPos)) << 48) & 9007199254740991L);
out[17 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in.get(112 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in.get(113 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in.get(114 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in.get(115 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in.get(116 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in.get(117 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in.get(118 + inPos)) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in.get(119 + inPos)) << 51) & 9007199254740991L);
out[18 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in.get(119 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in.get(120 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in.get(121 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in.get(122 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in.get(123 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in.get(124 + inPos)) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in.get(125 + inPos)) << 46) & 9007199254740991L);
out[19 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in.get(125 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in.get(126 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in.get(127 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in.get(128 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in.get(129 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in.get(130 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in.get(131 + inPos)) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in.get(132 + inPos)) << 49) & 9007199254740991L);
out[20 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in.get(132 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in.get(133 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in.get(134 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in.get(135 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in.get(136 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in.get(137 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in.get(138 + inPos)) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in.get(139 + inPos)) << 52) & 9007199254740991L);
out[21 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in.get(139 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in.get(140 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in.get(141 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in.get(142 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in.get(143 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in.get(144 + inPos)) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in.get(145 + inPos)) << 47) & 9007199254740991L);
out[22 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in.get(145 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in.get(146 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in.get(147 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in.get(148 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in.get(149 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in.get(150 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in.get(151 + inPos)) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in.get(152 + inPos)) << 50) & 9007199254740991L);
out[23 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in.get(152 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in.get(153 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in.get(154 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in.get(155 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in.get(156 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in.get(157 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in.get(158 + inPos)) << 45) & 9007199254740991L);
out[24 + outPos] =
// [76543210]
// [_____________________________________________76543210]
((((long)in.get(159 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________54321098________]
((((long)in.get(160 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________32109876________________]
((((long)in.get(161 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________10987654________________________]
((((long)in.get(162 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________98765432________________________________]
((((long)in.get(163 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____76543210________________________________________]
((((long)in.get(164 + inPos)) << 40) & 281474976710655L)
| // [___43210]
// [21098________________________________________________]
((((long)in.get(165 + inPos)) << 48) & 9007199254740991L);
out[25 + outPos] =
// [765_____]
// [__________________________________________________210]
((((long)in.get(165 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________09876543___]
((((long)in.get(166 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________87654321___________]
((((long)in.get(167 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________65432109___________________]
((((long)in.get(168 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________43210987___________________________]
((((long)in.get(169 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________21098765___________________________________]
((((long)in.get(170 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__09876543___________________________________________]
((((long)in.get(171 + inPos)) << 43) & 2251799813685247L)
| // [______10]
// [21___________________________________________________]
((((long)in.get(172 + inPos)) << 51) & 9007199254740991L);
out[26 + outPos] =
// [765432__]
// [_______________________________________________543210]
((((long)in.get(172 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________32109876______]
((((long)in.get(173 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________10987654______________]
((((long)in.get(174 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________98765432______________________]
((((long)in.get(175 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________76543210______________________________]
((((long)in.get(176 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______54321098______________________________________]
((((long)in.get(177 + inPos)) << 38) & 70368744177663L)
| // [_6543210]
// [2109876______________________________________________]
((((long)in.get(178 + inPos)) << 46) & 9007199254740991L);
out[27 + outPos] =
// [7_______]
// [____________________________________________________0]
((((long)in.get(178 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________87654321_]
((((long)in.get(179 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________65432109_________]
((((long)in.get(180 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________43210987_________________]
((((long)in.get(181 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________21098765_________________________]
((((long)in.get(182 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________09876543_________________________________]
((((long)in.get(183 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____87654321_________________________________________]
((((long)in.get(184 + inPos)) << 41) & 562949953421311L)
| // [____3210]
// [2109_________________________________________________]
((((long)in.get(185 + inPos)) << 49) & 9007199254740991L);
out[28 + outPos] =
// [7654____]
// [_________________________________________________3210]
((((long)in.get(185 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________10987654____]
((((long)in.get(186 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________98765432____________]
((((long)in.get(187 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________76543210____________________]
((((long)in.get(188 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________54321098____________________________]
((((long)in.get(189 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________32109876____________________________________]
((((long)in.get(190 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_10987654____________________________________________]
((((long)in.get(191 + inPos)) << 44) & 4503599627370495L)
| // [_______0]
// [2____________________________________________________]
((((long)in.get(192 + inPos)) << 52) & 9007199254740991L);
out[29 + outPos] =
// [7654321_]
// [______________________________________________6543210]
((((long)in.get(192 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________43210987_______]
((((long)in.get(193 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________21098765_______________]
((((long)in.get(194 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________09876543_______________________]
((((long)in.get(195 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________87654321_______________________________]
((((long)in.get(196 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______65432109_______________________________________]
((((long)in.get(197 + inPos)) << 39) & 140737488355327L)
| // [__543210]
// [210987_______________________________________________]
((((long)in.get(198 + inPos)) << 47) & 9007199254740991L);
out[30 + outPos] =
// [76______]
// [___________________________________________________10]
((((long)in.get(198 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________98765432__]
((((long)in.get(199 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________76543210__________]
((((long)in.get(200 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________54321098__________________]
((((long)in.get(201 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________32109876__________________________]
((((long)in.get(202 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________10987654__________________________________]
((((long)in.get(203 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___98765432__________________________________________]
((((long)in.get(204 + inPos)) << 42) & 1125899906842623L)
| // [_____210]
// [210__________________________________________________]
((((long)in.get(205 + inPos)) << 50) & 9007199254740991L);
out[31 + outPos] =
// [76543___]
// [________________________________________________43210]
((((long)in.get(205 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________21098765_____]
((((long)in.get(206 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________09876543_____________]
((((long)in.get(207 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________87654321_____________________]
((((long)in.get(208 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________65432109_____________________________]
((((long)in.get(209 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________43210987_____________________________________]
((((long)in.get(210 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [21098765_____________________________________________]
((((long)in.get(211 + inPos)) << 45) & 9007199254740991L);
}
}
private static final class Packer54 extends BytePackerForLong {
private Packer54() {
super(54);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[ 0 + inPos] & 18014398509481983L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[ 0 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[ 1 + inPos] & 18014398509481983L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[ 1 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[ 1 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[ 2 + inPos] & 18014398509481983L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[ 2 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[ 2 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[ 3 + inPos] & 18014398509481983L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[ 3 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[ 3 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[ 4 + inPos] & 18014398509481983L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[ 4 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[ 5 + inPos] & 18014398509481983L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[ 5 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[ 5 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[ 6 + inPos] & 18014398509481983L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[ 6 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[ 6 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[ 7 + inPos] & 18014398509481983L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[ 7 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[ 7 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 46)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[ 0 + inPos] & 18014398509481983L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[ 0 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[ 0 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[ 1 + inPos] & 18014398509481983L) << 6)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[ 1 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[ 1 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[13 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[ 1 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[ 2 + inPos] & 18014398509481983L) << 4)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[ 2 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[ 2 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[20 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[ 2 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[ 3 + inPos] & 18014398509481983L) << 2)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[ 3 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[ 3 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[ 3 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[ 4 + inPos] & 18014398509481983L))) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[ 4 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[33 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[ 4 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[ 5 + inPos] & 18014398509481983L) << 6)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[ 5 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[ 5 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[40 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[ 5 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[ 6 + inPos] & 18014398509481983L) << 4)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[ 6 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[ 6 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[ 6 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[ 7 + inPos] & 18014398509481983L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[ 7 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[ 7 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[ 7 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[ 8 + inPos] & 18014398509481983L))) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[ 8 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[ 8 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[ 8 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[ 8 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[ 8 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[60 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[ 8 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[ 9 + inPos] & 18014398509481983L) << 6)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[ 9 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[ 9 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[ 9 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[ 9 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[ 9 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[ 9 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[ 9 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[10 + inPos] & 18014398509481983L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[10 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[10 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[10 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[10 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[10 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[10 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[74 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[10 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[11 + inPos] & 18014398509481983L) << 2)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[11 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[11 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[11 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[11 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[11 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[11 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[12 + inPos] & 18014398509481983L))) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[12 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[12 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[12 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[12 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[12 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[87 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[12 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[13 + inPos] & 18014398509481983L) << 6)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[13 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[13 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[13 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[13 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[13 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[13 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[13 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[14 + inPos] & 18014398509481983L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[14 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[14 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[14 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[14 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[14 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[14 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[101 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[14 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[15 + inPos] & 18014398509481983L) << 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[15 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[15 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[15 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[15 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[15 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[15 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[16 + inPos] & 18014398509481983L))) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[16 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[16 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[16 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[16 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[16 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[114 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[16 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[17 + inPos] & 18014398509481983L) << 6)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[17 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[17 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[17 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[17 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[17 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[17 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[121 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[17 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[18 + inPos] & 18014398509481983L) << 4)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[18 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[18 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[18 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[18 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[18 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[18 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[128 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[18 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[19 + inPos] & 18014398509481983L) << 2)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[19 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[19 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[19 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[19 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[19 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[19 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[20 + inPos] & 18014398509481983L))) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[20 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[20 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[20 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[20 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[20 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[141 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[20 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[21 + inPos] & 18014398509481983L) << 6)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[21 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[21 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[21 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[21 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[21 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[21 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[148 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[21 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[22 + inPos] & 18014398509481983L) << 4)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[22 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[22 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[22 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[22 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[22 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[22 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[155 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[22 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[23 + inPos] & 18014398509481983L) << 2)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[23 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[23 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[23 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[23 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[23 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[23 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[24 + inPos] & 18014398509481983L))) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[24 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[24 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[24 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[24 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[24 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[168 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[24 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[25 + inPos] & 18014398509481983L) << 6)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[25 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[25 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[25 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[25 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[25 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[25 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[175 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[25 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[26 + inPos] & 18014398509481983L) << 4)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[26 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[26 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[26 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[26 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[26 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[26 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[182 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[26 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[27 + inPos] & 18014398509481983L) << 2)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[27 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[27 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[27 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[27 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[27 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[27 + inPos] & 18014398509481983L) >>> 46)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [______________________________________________76543210]
((in[28 + inPos] & 18014398509481983L))) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [______________________________________54321098________]
((in[28 + inPos] & 18014398509481983L) >>> 8)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [______________________________32109876________________]
((in[28 + inPos] & 18014398509481983L) >>> 16)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [______________________10987654________________________]
((in[28 + inPos] & 18014398509481983L) >>> 24)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [______________98765432________________________________]
((in[28 + inPos] & 18014398509481983L) >>> 32)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [______76543210________________________________________]
((in[28 + inPos] & 18014398509481983L) >>> 40)) & 255);
out[195 + outPos] = (byte)((
// [__543210]
// [321098________________________________________________]
((in[28 + inPos] & 18014398509481983L) >>> 48)
| // [76______]
// [____________________________________________________10]
((in[29 + inPos] & 18014398509481983L) << 6)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [____________________________________________98765432__]
((in[29 + inPos] & 18014398509481983L) >>> 2)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [____________________________________76543210__________]
((in[29 + inPos] & 18014398509481983L) >>> 10)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [____________________________54321098__________________]
((in[29 + inPos] & 18014398509481983L) >>> 18)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [____________________32109876__________________________]
((in[29 + inPos] & 18014398509481983L) >>> 26)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [____________10987654__________________________________]
((in[29 + inPos] & 18014398509481983L) >>> 34)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [____98765432__________________________________________]
((in[29 + inPos] & 18014398509481983L) >>> 42)) & 255);
out[202 + outPos] = (byte)((
// [____3210]
// [3210__________________________________________________]
((in[29 + inPos] & 18014398509481983L) >>> 50)
| // [7654____]
// [__________________________________________________3210]
((in[30 + inPos] & 18014398509481983L) << 4)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [__________________________________________10987654____]
((in[30 + inPos] & 18014398509481983L) >>> 4)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [__________________________________98765432____________]
((in[30 + inPos] & 18014398509481983L) >>> 12)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [__________________________76543210____________________]
((in[30 + inPos] & 18014398509481983L) >>> 20)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [__________________54321098____________________________]
((in[30 + inPos] & 18014398509481983L) >>> 28)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [__________32109876____________________________________]
((in[30 + inPos] & 18014398509481983L) >>> 36)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [__10987654____________________________________________]
((in[30 + inPos] & 18014398509481983L) >>> 44)) & 255);
out[209 + outPos] = (byte)((
// [______10]
// [32____________________________________________________]
((in[30 + inPos] & 18014398509481983L) >>> 52)
| // [765432__]
// [________________________________________________543210]
((in[31 + inPos] & 18014398509481983L) << 2)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876______]
((in[31 + inPos] & 18014398509481983L) >>> 6)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [________________________________10987654______________]
((in[31 + inPos] & 18014398509481983L) >>> 14)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [________________________98765432______________________]
((in[31 + inPos] & 18014398509481983L) >>> 22)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [________________76543210______________________________]
((in[31 + inPos] & 18014398509481983L) >>> 30)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [________54321098______________________________________]
((in[31 + inPos] & 18014398509481983L) >>> 38)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [32109876______________________________________________]
((in[31 + inPos] & 18014398509481983L) >>> 46)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 18014398509481983L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[ 9 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[10 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[11 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[12 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[13 + inPos]) << 50) & 18014398509481983L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[16 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[17 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[18 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[19 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[20 + inPos]) << 52) & 18014398509481983L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[21 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[22 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[23 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[24 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[25 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[26 + inPos]) << 46) & 18014398509481983L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[30 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[31 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[32 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[33 + inPos]) << 48) & 18014398509481983L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[37 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[38 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[39 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[40 + inPos]) << 50) & 18014398509481983L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[41 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[42 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[43 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[44 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[45 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[46 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[47 + inPos]) << 52) & 18014398509481983L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[50 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[51 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[52 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[53 + inPos]) << 46) & 18014398509481983L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 18014398509481983L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get( 9 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(10 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(11 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(12 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(13 + inPos)) << 50) & 18014398509481983L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(16 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(17 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(18 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(19 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(20 + inPos)) << 52) & 18014398509481983L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(21 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(22 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(23 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(24 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(25 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(26 + inPos)) << 46) & 18014398509481983L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(30 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(31 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(32 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(33 + inPos)) << 48) & 18014398509481983L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(37 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(38 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(39 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(40 + inPos)) << 50) & 18014398509481983L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(42 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(43 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(44 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(45 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(46 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(47 + inPos)) << 52) & 18014398509481983L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(50 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(51 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(52 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(53 + inPos)) << 46) & 18014398509481983L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 18014398509481983L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[ 6 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[ 7 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[ 8 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[ 9 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[10 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[11 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[12 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[13 + inPos]) << 50) & 18014398509481983L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[13 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[14 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[15 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[16 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[17 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[18 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[19 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[20 + inPos]) << 52) & 18014398509481983L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[20 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[21 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[22 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[23 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[24 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[25 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[26 + inPos]) << 46) & 18014398509481983L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[27 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[28 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[29 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[30 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[31 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[32 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[33 + inPos]) << 48) & 18014398509481983L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[33 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[34 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[35 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[36 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[37 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[38 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[39 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[40 + inPos]) << 50) & 18014398509481983L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[40 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[41 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[42 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[43 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[44 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[45 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[46 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[47 + inPos]) << 52) & 18014398509481983L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[50 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[51 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[52 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[53 + inPos]) << 46) & 18014398509481983L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[54 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[55 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[56 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[57 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[58 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[59 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[60 + inPos]) << 48) & 18014398509481983L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[60 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[61 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[62 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[63 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[64 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[65 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[66 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[67 + inPos]) << 50) & 18014398509481983L);
out[10 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[70 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[71 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[72 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[73 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[74 + inPos]) << 52) & 18014398509481983L);
out[11 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[74 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[75 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[76 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[77 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[78 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[79 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[80 + inPos]) << 46) & 18014398509481983L);
out[12 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[81 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[82 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[83 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[84 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[85 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[86 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[87 + inPos]) << 48) & 18014398509481983L);
out[13 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[87 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[88 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[89 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[90 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[91 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[92 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[93 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[94 + inPos]) << 50) & 18014398509481983L);
out[14 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[97 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[98 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[99 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[100 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[101 + inPos]) << 52) & 18014398509481983L);
out[15 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[101 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[102 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[103 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[104 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[105 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[106 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[107 + inPos]) << 46) & 18014398509481983L);
out[16 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[108 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[109 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[110 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[111 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[112 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[113 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[114 + inPos]) << 48) & 18014398509481983L);
out[17 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[114 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[115 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[116 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[117 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[118 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[119 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[120 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[121 + inPos]) << 50) & 18014398509481983L);
out[18 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[121 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[122 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[123 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[124 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[125 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[126 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[127 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[128 + inPos]) << 52) & 18014398509481983L);
out[19 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[128 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[129 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[130 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[131 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[132 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[133 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[134 + inPos]) << 46) & 18014398509481983L);
out[20 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[135 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[136 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[137 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[138 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[139 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[140 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[141 + inPos]) << 48) & 18014398509481983L);
out[21 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[141 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[142 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[143 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[144 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[145 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[146 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[147 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[148 + inPos]) << 50) & 18014398509481983L);
out[22 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[148 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[149 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[150 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[151 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[152 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[153 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[154 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[155 + inPos]) << 52) & 18014398509481983L);
out[23 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[155 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[156 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[157 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[158 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[159 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[160 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[161 + inPos]) << 46) & 18014398509481983L);
out[24 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[162 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[163 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[164 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[165 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[166 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[167 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[168 + inPos]) << 48) & 18014398509481983L);
out[25 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[168 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[169 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[170 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[171 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[172 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[173 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[174 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[175 + inPos]) << 50) & 18014398509481983L);
out[26 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[175 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[176 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[177 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[178 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[179 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[180 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[181 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[182 + inPos]) << 52) & 18014398509481983L);
out[27 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[182 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[183 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[184 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[185 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[186 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[187 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[188 + inPos]) << 46) & 18014398509481983L);
out[28 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in[189 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in[190 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in[191 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in[192 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in[193 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in[194 + inPos]) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in[195 + inPos]) << 48) & 18014398509481983L);
out[29 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in[195 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in[196 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in[197 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in[198 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in[199 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in[200 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in[201 + inPos]) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in[202 + inPos]) << 50) & 18014398509481983L);
out[30 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in[202 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in[203 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in[204 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in[205 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in[206 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in[207 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in[208 + inPos]) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in[209 + inPos]) << 52) & 18014398509481983L);
out[31 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in[209 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in[210 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in[211 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in[212 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in[213 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in[214 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in[215 + inPos]) << 46) & 18014398509481983L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 18014398509481983L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get( 6 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get( 7 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get( 8 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get( 9 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(10 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(11 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(12 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(13 + inPos)) << 50) & 18014398509481983L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(13 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(14 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(15 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(16 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(17 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(18 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(19 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(20 + inPos)) << 52) & 18014398509481983L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(20 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(21 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(22 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(23 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(24 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(25 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(26 + inPos)) << 46) & 18014398509481983L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(27 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(28 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(29 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(30 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(31 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(32 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(33 + inPos)) << 48) & 18014398509481983L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(33 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(34 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(35 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(36 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(37 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(38 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(39 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(40 + inPos)) << 50) & 18014398509481983L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(40 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(41 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(42 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(43 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(44 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(45 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(46 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(47 + inPos)) << 52) & 18014398509481983L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(50 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(51 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(52 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(53 + inPos)) << 46) & 18014398509481983L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(54 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(55 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(56 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(57 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(58 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(59 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(60 + inPos)) << 48) & 18014398509481983L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(60 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(61 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(62 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(63 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(64 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(65 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(66 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(67 + inPos)) << 50) & 18014398509481983L);
out[10 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(70 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(71 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(72 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(73 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(74 + inPos)) << 52) & 18014398509481983L);
out[11 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(74 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(75 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(76 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(77 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(78 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(79 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(80 + inPos)) << 46) & 18014398509481983L);
out[12 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(81 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(82 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(83 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(84 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(85 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(86 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(87 + inPos)) << 48) & 18014398509481983L);
out[13 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(87 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(88 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(89 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(90 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(91 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(92 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(93 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(94 + inPos)) << 50) & 18014398509481983L);
out[14 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(97 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(98 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(99 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(100 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(101 + inPos)) << 52) & 18014398509481983L);
out[15 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(101 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(102 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(103 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(104 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(105 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(106 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(107 + inPos)) << 46) & 18014398509481983L);
out[16 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(108 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(109 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(110 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(111 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(112 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(113 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(114 + inPos)) << 48) & 18014398509481983L);
out[17 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(114 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(115 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(116 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(117 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(118 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(119 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(120 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(121 + inPos)) << 50) & 18014398509481983L);
out[18 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(121 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(122 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(123 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(124 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(125 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(126 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(127 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(128 + inPos)) << 52) & 18014398509481983L);
out[19 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(128 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(129 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(130 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(131 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(132 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(133 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(134 + inPos)) << 46) & 18014398509481983L);
out[20 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(135 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(136 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(137 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(138 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(139 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(140 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(141 + inPos)) << 48) & 18014398509481983L);
out[21 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(141 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(142 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(143 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(144 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(145 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(146 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(147 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(148 + inPos)) << 50) & 18014398509481983L);
out[22 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(148 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(149 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(150 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(151 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(152 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(153 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(154 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(155 + inPos)) << 52) & 18014398509481983L);
out[23 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(155 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(156 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(157 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(158 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(159 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(160 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(161 + inPos)) << 46) & 18014398509481983L);
out[24 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(162 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(163 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(164 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(165 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(166 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(167 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(168 + inPos)) << 48) & 18014398509481983L);
out[25 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(168 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(169 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(170 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(171 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(172 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(173 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(174 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(175 + inPos)) << 50) & 18014398509481983L);
out[26 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(175 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(176 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(177 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(178 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(179 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(180 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(181 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(182 + inPos)) << 52) & 18014398509481983L);
out[27 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(182 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(183 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(184 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(185 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(186 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(187 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(188 + inPos)) << 46) & 18014398509481983L);
out[28 + outPos] =
// [76543210]
// [______________________________________________76543210]
((((long)in.get(189 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________54321098________]
((((long)in.get(190 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________32109876________________]
((((long)in.get(191 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________10987654________________________]
((((long)in.get(192 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________98765432________________________________]
((((long)in.get(193 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______76543210________________________________________]
((((long)in.get(194 + inPos)) << 40) & 281474976710655L)
| // [__543210]
// [321098________________________________________________]
((((long)in.get(195 + inPos)) << 48) & 18014398509481983L);
out[29 + outPos] =
// [76______]
// [____________________________________________________10]
((((long)in.get(195 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________98765432__]
((((long)in.get(196 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________76543210__________]
((((long)in.get(197 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________54321098__________________]
((((long)in.get(198 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________32109876__________________________]
((((long)in.get(199 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________10987654__________________________________]
((((long)in.get(200 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____98765432__________________________________________]
((((long)in.get(201 + inPos)) << 42) & 1125899906842623L)
| // [____3210]
// [3210__________________________________________________]
((((long)in.get(202 + inPos)) << 50) & 18014398509481983L);
out[30 + outPos] =
// [7654____]
// [__________________________________________________3210]
((((long)in.get(202 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________10987654____]
((((long)in.get(203 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________98765432____________]
((((long)in.get(204 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________76543210____________________]
((((long)in.get(205 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________54321098____________________________]
((((long)in.get(206 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________32109876____________________________________]
((((long)in.get(207 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__10987654____________________________________________]
((((long)in.get(208 + inPos)) << 44) & 4503599627370495L)
| // [______10]
// [32____________________________________________________]
((((long)in.get(209 + inPos)) << 52) & 18014398509481983L);
out[31 + outPos] =
// [765432__]
// [________________________________________________543210]
((((long)in.get(209 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________32109876______]
((((long)in.get(210 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________10987654______________]
((((long)in.get(211 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________98765432______________________]
((((long)in.get(212 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________76543210______________________________]
((((long)in.get(213 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________54321098______________________________________]
((((long)in.get(214 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [32109876______________________________________________]
((((long)in.get(215 + inPos)) << 46) & 18014398509481983L);
}
}
private static final class Packer55 extends BytePackerForLong {
private Packer55() {
super(55);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________________76543210]
((in[ 0 + inPos] & 36028797018963967L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________________54321098________]
((in[ 0 + inPos] & 36028797018963967L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________________10987654________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______________98765432________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_______76543210________________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_6543210]
// [4321098________________________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 48)
| // [7_______]
// [______________________________________________________0]
((in[ 1 + inPos] & 36028797018963967L) << 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________________________87654321_]
((in[ 1 + inPos] & 36028797018963967L) >>> 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________65432109_________]
((in[ 1 + inPos] & 36028797018963967L) >>> 9)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 17)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________21098765_________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 25)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________09876543_________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 33)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______87654321_________________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 41)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [432109_________________________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 49)
| // [76______]
// [_____________________________________________________10]
((in[ 2 + inPos] & 36028797018963967L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____________________________________________98765432__]
((in[ 2 + inPos] & 36028797018963967L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210__________]
((in[ 2 + inPos] & 36028797018963967L) >>> 10)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098__________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 18)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________32109876__________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 26)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________10987654__________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 34)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____98765432__________________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 42)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [43210__________________________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 50)
| // [765_____]
// [____________________________________________________210]
((in[ 3 + inPos] & 36028797018963967L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________________________09876543___]
((in[ 3 + inPos] & 36028797018963967L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321___________]
((in[ 3 + inPos] & 36028797018963967L) >>> 11)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________65432109___________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 19)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________43210987___________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 27)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________21098765___________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 35)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____09876543___________________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 43)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [4321___________________________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 51)
| // [7654____]
// [___________________________________________________3210]
((in[ 4 + inPos] & 36028797018963967L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___________________________________________10987654____]
((in[ 4 + inPos] & 36028797018963967L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432____________]
((in[ 4 + inPos] & 36028797018963967L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [___________________________76543210____________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 20)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [___________________54321098____________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 28)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [___________32109876____________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 36)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___10987654____________________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 44)) & 255);
out[34 + outPos] = (byte)((
// [_____210]
// [432____________________________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 52)
| // [76543___]
// [__________________________________________________43210]
((in[ 5 + inPos] & 36028797018963967L) << 3)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________________________________21098765_____]
((in[ 5 + inPos] & 36028797018963967L) >>> 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543_____________]
((in[ 5 + inPos] & 36028797018963967L) >>> 13)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_____________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 21)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________65432109_____________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 29)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________43210987_____________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 37)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__21098765_____________________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 45)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [43_____________________________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 53)
| // [765432__]
// [_________________________________________________543210]
((in[ 6 + inPos] & 36028797018963967L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_________________________________________32109876______]
((in[ 6 + inPos] & 36028797018963967L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654______________]
((in[ 6 + inPos] & 36028797018963967L) >>> 14)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_________________________98765432______________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 22)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_________________76543210______________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 30)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_________54321098______________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 38)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_32109876______________________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 46)) & 255);
out[48 + outPos] = (byte)((
// [_______0]
// [4______________________________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 54)
| // [7654321_]
// [________________________________________________6543210]
((in[ 7 + inPos] & 36028797018963967L) << 1)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________43210987_______]
((in[ 7 + inPos] & 36028797018963967L) >>> 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_______________]
((in[ 7 + inPos] & 36028797018963967L) >>> 15)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________09876543_______________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 23)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________87654321_______________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 31)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________65432109_______________________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 39)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [43210987_______________________________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 47)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________________76543210]
((in[ 0 + inPos] & 36028797018963967L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________________54321098________]
((in[ 0 + inPos] & 36028797018963967L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________________10987654________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______________98765432________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_______76543210________________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [_6543210]
// [4321098________________________________________________]
((in[ 0 + inPos] & 36028797018963967L) >>> 48)
| // [7_______]
// [______________________________________________________0]
((in[ 1 + inPos] & 36028797018963967L) << 7)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [______________________________________________87654321_]
((in[ 1 + inPos] & 36028797018963967L) >>> 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________65432109_________]
((in[ 1 + inPos] & 36028797018963967L) >>> 9)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 17)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________21098765_________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 25)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________09876543_________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 33)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______87654321_________________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 41)) & 255);
out[13 + outPos] = (byte)((
// [__543210]
// [432109_________________________________________________]
((in[ 1 + inPos] & 36028797018963967L) >>> 49)
| // [76______]
// [_____________________________________________________10]
((in[ 2 + inPos] & 36028797018963967L) << 6)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [_____________________________________________98765432__]
((in[ 2 + inPos] & 36028797018963967L) >>> 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210__________]
((in[ 2 + inPos] & 36028797018963967L) >>> 10)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098__________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 18)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________32109876__________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 26)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________10987654__________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 34)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____98765432__________________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 42)) & 255);
out[20 + outPos] = (byte)((
// [___43210]
// [43210__________________________________________________]
((in[ 2 + inPos] & 36028797018963967L) >>> 50)
| // [765_____]
// [____________________________________________________210]
((in[ 3 + inPos] & 36028797018963967L) << 5)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____________________________________________09876543___]
((in[ 3 + inPos] & 36028797018963967L) >>> 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321___________]
((in[ 3 + inPos] & 36028797018963967L) >>> 11)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________65432109___________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 19)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________43210987___________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 27)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________21098765___________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 35)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____09876543___________________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 43)) & 255);
out[27 + outPos] = (byte)((
// [____3210]
// [4321___________________________________________________]
((in[ 3 + inPos] & 36028797018963967L) >>> 51)
| // [7654____]
// [___________________________________________________3210]
((in[ 4 + inPos] & 36028797018963967L) << 4)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [___________________________________________10987654____]
((in[ 4 + inPos] & 36028797018963967L) >>> 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432____________]
((in[ 4 + inPos] & 36028797018963967L) >>> 12)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [___________________________76543210____________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 20)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [___________________54321098____________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 28)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [___________32109876____________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 36)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___10987654____________________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 44)) & 255);
out[34 + outPos] = (byte)((
// [_____210]
// [432____________________________________________________]
((in[ 4 + inPos] & 36028797018963967L) >>> 52)
| // [76543___]
// [__________________________________________________43210]
((in[ 5 + inPos] & 36028797018963967L) << 3)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__________________________________________21098765_____]
((in[ 5 + inPos] & 36028797018963967L) >>> 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543_____________]
((in[ 5 + inPos] & 36028797018963967L) >>> 13)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_____________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 21)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________65432109_____________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 29)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________43210987_____________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 37)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__21098765_____________________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 45)) & 255);
out[41 + outPos] = (byte)((
// [______10]
// [43_____________________________________________________]
((in[ 5 + inPos] & 36028797018963967L) >>> 53)
| // [765432__]
// [_________________________________________________543210]
((in[ 6 + inPos] & 36028797018963967L) << 2)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [_________________________________________32109876______]
((in[ 6 + inPos] & 36028797018963967L) >>> 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654______________]
((in[ 6 + inPos] & 36028797018963967L) >>> 14)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_________________________98765432______________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 22)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_________________76543210______________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 30)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_________54321098______________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 38)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_32109876______________________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 46)) & 255);
out[48 + outPos] = (byte)((
// [_______0]
// [4______________________________________________________]
((in[ 6 + inPos] & 36028797018963967L) >>> 54)
| // [7654321_]
// [________________________________________________6543210]
((in[ 7 + inPos] & 36028797018963967L) << 1)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________43210987_______]
((in[ 7 + inPos] & 36028797018963967L) >>> 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_______________]
((in[ 7 + inPos] & 36028797018963967L) >>> 15)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________09876543_______________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 23)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________87654321_______________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 31)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________65432109_______________________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 39)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [43210987_______________________________________________]
((in[ 7 + inPos] & 36028797018963967L) >>> 47)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [_______________________________________________76543210]
((in[ 8 + inPos] & 36028797018963967L))) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [_______________________________________54321098________]
((in[ 8 + inPos] & 36028797018963967L) >>> 8)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876________________]
((in[ 8 + inPos] & 36028797018963967L) >>> 16)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_______________________10987654________________________]
((in[ 8 + inPos] & 36028797018963967L) >>> 24)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_______________98765432________________________________]
((in[ 8 + inPos] & 36028797018963967L) >>> 32)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_______76543210________________________________________]
((in[ 8 + inPos] & 36028797018963967L) >>> 40)) & 255);
out[61 + outPos] = (byte)((
// [_6543210]
// [4321098________________________________________________]
((in[ 8 + inPos] & 36028797018963967L) >>> 48)
| // [7_______]
// [______________________________________________________0]
((in[ 9 + inPos] & 36028797018963967L) << 7)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______________________________________________87654321_]
((in[ 9 + inPos] & 36028797018963967L) >>> 1)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [______________________________________65432109_________]
((in[ 9 + inPos] & 36028797018963967L) >>> 9)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_________________]
((in[ 9 + inPos] & 36028797018963967L) >>> 17)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [______________________21098765_________________________]
((in[ 9 + inPos] & 36028797018963967L) >>> 25)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________09876543_________________________________]
((in[ 9 + inPos] & 36028797018963967L) >>> 33)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______87654321_________________________________________]
((in[ 9 + inPos] & 36028797018963967L) >>> 41)) & 255);
out[68 + outPos] = (byte)((
// [__543210]
// [432109_________________________________________________]
((in[ 9 + inPos] & 36028797018963967L) >>> 49)
| // [76______]
// [_____________________________________________________10]
((in[10 + inPos] & 36028797018963967L) << 6)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_____________________________________________98765432__]
((in[10 + inPos] & 36028797018963967L) >>> 2)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210__________]
((in[10 + inPos] & 36028797018963967L) >>> 10)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098__________________]
((in[10 + inPos] & 36028797018963967L) >>> 18)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [_____________________32109876__________________________]
((in[10 + inPos] & 36028797018963967L) >>> 26)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [_____________10987654__________________________________]
((in[10 + inPos] & 36028797018963967L) >>> 34)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_____98765432__________________________________________]
((in[10 + inPos] & 36028797018963967L) >>> 42)) & 255);
out[75 + outPos] = (byte)((
// [___43210]
// [43210__________________________________________________]
((in[10 + inPos] & 36028797018963967L) >>> 50)
| // [765_____]
// [____________________________________________________210]
((in[11 + inPos] & 36028797018963967L) << 5)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____________________________________________09876543___]
((in[11 + inPos] & 36028797018963967L) >>> 3)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321___________]
((in[11 + inPos] & 36028797018963967L) >>> 11)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________________________65432109___________________]
((in[11 + inPos] & 36028797018963967L) >>> 19)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________43210987___________________________]
((in[11 + inPos] & 36028797018963967L) >>> 27)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________21098765___________________________________]
((in[11 + inPos] & 36028797018963967L) >>> 35)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____09876543___________________________________________]
((in[11 + inPos] & 36028797018963967L) >>> 43)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [4321___________________________________________________]
((in[11 + inPos] & 36028797018963967L) >>> 51)
| // [7654____]
// [___________________________________________________3210]
((in[12 + inPos] & 36028797018963967L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [___________________________________________10987654____]
((in[12 + inPos] & 36028797018963967L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432____________]
((in[12 + inPos] & 36028797018963967L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [___________________________76543210____________________]
((in[12 + inPos] & 36028797018963967L) >>> 20)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [___________________54321098____________________________]
((in[12 + inPos] & 36028797018963967L) >>> 28)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [___________32109876____________________________________]
((in[12 + inPos] & 36028797018963967L) >>> 36)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [___10987654____________________________________________]
((in[12 + inPos] & 36028797018963967L) >>> 44)) & 255);
out[89 + outPos] = (byte)((
// [_____210]
// [432____________________________________________________]
((in[12 + inPos] & 36028797018963967L) >>> 52)
| // [76543___]
// [__________________________________________________43210]
((in[13 + inPos] & 36028797018963967L) << 3)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [__________________________________________21098765_____]
((in[13 + inPos] & 36028797018963967L) >>> 5)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543_____________]
((in[13 + inPos] & 36028797018963967L) >>> 13)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_____________________]
((in[13 + inPos] & 36028797018963967L) >>> 21)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [__________________65432109_____________________________]
((in[13 + inPos] & 36028797018963967L) >>> 29)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [__________43210987_____________________________________]
((in[13 + inPos] & 36028797018963967L) >>> 37)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [__21098765_____________________________________________]
((in[13 + inPos] & 36028797018963967L) >>> 45)) & 255);
out[96 + outPos] = (byte)((
// [______10]
// [43_____________________________________________________]
((in[13 + inPos] & 36028797018963967L) >>> 53)
| // [765432__]
// [_________________________________________________543210]
((in[14 + inPos] & 36028797018963967L) << 2)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [_________________________________________32109876______]
((in[14 + inPos] & 36028797018963967L) >>> 6)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654______________]
((in[14 + inPos] & 36028797018963967L) >>> 14)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [_________________________98765432______________________]
((in[14 + inPos] & 36028797018963967L) >>> 22)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [_________________76543210______________________________]
((in[14 + inPos] & 36028797018963967L) >>> 30)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_________54321098______________________________________]
((in[14 + inPos] & 36028797018963967L) >>> 38)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_32109876______________________________________________]
((in[14 + inPos] & 36028797018963967L) >>> 46)) & 255);
out[103 + outPos] = (byte)((
// [_______0]
// [4______________________________________________________]
((in[14 + inPos] & 36028797018963967L) >>> 54)
| // [7654321_]
// [________________________________________________6543210]
((in[15 + inPos] & 36028797018963967L) << 1)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________________________43210987_______]
((in[15 + inPos] & 36028797018963967L) >>> 7)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_______________]
((in[15 + inPos] & 36028797018963967L) >>> 15)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________________________09876543_______________________]
((in[15 + inPos] & 36028797018963967L) >>> 23)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________87654321_______________________________]
((in[15 + inPos] & 36028797018963967L) >>> 31)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________65432109_______________________________________]
((in[15 + inPos] & 36028797018963967L) >>> 39)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [43210987_______________________________________________]
((in[15 + inPos] & 36028797018963967L) >>> 47)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [_______________________________________________76543210]
((in[16 + inPos] & 36028797018963967L))) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_______________________________________54321098________]
((in[16 + inPos] & 36028797018963967L) >>> 8)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876________________]
((in[16 + inPos] & 36028797018963967L) >>> 16)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [_______________________10987654________________________]
((in[16 + inPos] & 36028797018963967L) >>> 24)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_______________98765432________________________________]
((in[16 + inPos] & 36028797018963967L) >>> 32)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_______76543210________________________________________]
((in[16 + inPos] & 36028797018963967L) >>> 40)) & 255);
out[116 + outPos] = (byte)((
// [_6543210]
// [4321098________________________________________________]
((in[16 + inPos] & 36028797018963967L) >>> 48)
| // [7_______]
// [______________________________________________________0]
((in[17 + inPos] & 36028797018963967L) << 7)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [______________________________________________87654321_]
((in[17 + inPos] & 36028797018963967L) >>> 1)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [______________________________________65432109_________]
((in[17 + inPos] & 36028797018963967L) >>> 9)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_________________]
((in[17 + inPos] & 36028797018963967L) >>> 17)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [______________________21098765_________________________]
((in[17 + inPos] & 36028797018963967L) >>> 25)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [______________09876543_________________________________]
((in[17 + inPos] & 36028797018963967L) >>> 33)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [______87654321_________________________________________]
((in[17 + inPos] & 36028797018963967L) >>> 41)) & 255);
out[123 + outPos] = (byte)((
// [__543210]
// [432109_________________________________________________]
((in[17 + inPos] & 36028797018963967L) >>> 49)
| // [76______]
// [_____________________________________________________10]
((in[18 + inPos] & 36028797018963967L) << 6)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_____________________________________________98765432__]
((in[18 + inPos] & 36028797018963967L) >>> 2)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210__________]
((in[18 + inPos] & 36028797018963967L) >>> 10)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098__________________]
((in[18 + inPos] & 36028797018963967L) >>> 18)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_____________________32109876__________________________]
((in[18 + inPos] & 36028797018963967L) >>> 26)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [_____________10987654__________________________________]
((in[18 + inPos] & 36028797018963967L) >>> 34)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [_____98765432__________________________________________]
((in[18 + inPos] & 36028797018963967L) >>> 42)) & 255);
out[130 + outPos] = (byte)((
// [___43210]
// [43210__________________________________________________]
((in[18 + inPos] & 36028797018963967L) >>> 50)
| // [765_____]
// [____________________________________________________210]
((in[19 + inPos] & 36028797018963967L) << 5)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [____________________________________________09876543___]
((in[19 + inPos] & 36028797018963967L) >>> 3)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321___________]
((in[19 + inPos] & 36028797018963967L) >>> 11)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________________65432109___________________]
((in[19 + inPos] & 36028797018963967L) >>> 19)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________________43210987___________________________]
((in[19 + inPos] & 36028797018963967L) >>> 27)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________21098765___________________________________]
((in[19 + inPos] & 36028797018963967L) >>> 35)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____09876543___________________________________________]
((in[19 + inPos] & 36028797018963967L) >>> 43)) & 255);
out[137 + outPos] = (byte)((
// [____3210]
// [4321___________________________________________________]
((in[19 + inPos] & 36028797018963967L) >>> 51)
| // [7654____]
// [___________________________________________________3210]
((in[20 + inPos] & 36028797018963967L) << 4)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [___________________________________________10987654____]
((in[20 + inPos] & 36028797018963967L) >>> 4)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432____________]
((in[20 + inPos] & 36028797018963967L) >>> 12)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [___________________________76543210____________________]
((in[20 + inPos] & 36028797018963967L) >>> 20)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [___________________54321098____________________________]
((in[20 + inPos] & 36028797018963967L) >>> 28)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [___________32109876____________________________________]
((in[20 + inPos] & 36028797018963967L) >>> 36)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [___10987654____________________________________________]
((in[20 + inPos] & 36028797018963967L) >>> 44)) & 255);
out[144 + outPos] = (byte)((
// [_____210]
// [432____________________________________________________]
((in[20 + inPos] & 36028797018963967L) >>> 52)
| // [76543___]
// [__________________________________________________43210]
((in[21 + inPos] & 36028797018963967L) << 3)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__________________________________________21098765_____]
((in[21 + inPos] & 36028797018963967L) >>> 5)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543_____________]
((in[21 + inPos] & 36028797018963967L) >>> 13)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_____________________]
((in[21 + inPos] & 36028797018963967L) >>> 21)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [__________________65432109_____________________________]
((in[21 + inPos] & 36028797018963967L) >>> 29)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [__________43210987_____________________________________]
((in[21 + inPos] & 36028797018963967L) >>> 37)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__21098765_____________________________________________]
((in[21 + inPos] & 36028797018963967L) >>> 45)) & 255);
out[151 + outPos] = (byte)((
// [______10]
// [43_____________________________________________________]
((in[21 + inPos] & 36028797018963967L) >>> 53)
| // [765432__]
// [_________________________________________________543210]
((in[22 + inPos] & 36028797018963967L) << 2)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [_________________________________________32109876______]
((in[22 + inPos] & 36028797018963967L) >>> 6)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654______________]
((in[22 + inPos] & 36028797018963967L) >>> 14)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [_________________________98765432______________________]
((in[22 + inPos] & 36028797018963967L) >>> 22)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [_________________76543210______________________________]
((in[22 + inPos] & 36028797018963967L) >>> 30)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [_________54321098______________________________________]
((in[22 + inPos] & 36028797018963967L) >>> 38)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [_32109876______________________________________________]
((in[22 + inPos] & 36028797018963967L) >>> 46)) & 255);
out[158 + outPos] = (byte)((
// [_______0]
// [4______________________________________________________]
((in[22 + inPos] & 36028797018963967L) >>> 54)
| // [7654321_]
// [________________________________________________6543210]
((in[23 + inPos] & 36028797018963967L) << 1)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________________________________________43210987_______]
((in[23 + inPos] & 36028797018963967L) >>> 7)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_______________]
((in[23 + inPos] & 36028797018963967L) >>> 15)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________________09876543_______________________]
((in[23 + inPos] & 36028797018963967L) >>> 23)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________87654321_______________________________]
((in[23 + inPos] & 36028797018963967L) >>> 31)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________65432109_______________________________________]
((in[23 + inPos] & 36028797018963967L) >>> 39)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [43210987_______________________________________________]
((in[23 + inPos] & 36028797018963967L) >>> 47)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [_______________________________________________76543210]
((in[24 + inPos] & 36028797018963967L))) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [_______________________________________54321098________]
((in[24 + inPos] & 36028797018963967L) >>> 8)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [_______________________________32109876________________]
((in[24 + inPos] & 36028797018963967L) >>> 16)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [_______________________10987654________________________]
((in[24 + inPos] & 36028797018963967L) >>> 24)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [_______________98765432________________________________]
((in[24 + inPos] & 36028797018963967L) >>> 32)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [_______76543210________________________________________]
((in[24 + inPos] & 36028797018963967L) >>> 40)) & 255);
out[171 + outPos] = (byte)((
// [_6543210]
// [4321098________________________________________________]
((in[24 + inPos] & 36028797018963967L) >>> 48)
| // [7_______]
// [______________________________________________________0]
((in[25 + inPos] & 36028797018963967L) << 7)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [______________________________________________87654321_]
((in[25 + inPos] & 36028797018963967L) >>> 1)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [______________________________________65432109_________]
((in[25 + inPos] & 36028797018963967L) >>> 9)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [______________________________43210987_________________]
((in[25 + inPos] & 36028797018963967L) >>> 17)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [______________________21098765_________________________]
((in[25 + inPos] & 36028797018963967L) >>> 25)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [______________09876543_________________________________]
((in[25 + inPos] & 36028797018963967L) >>> 33)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [______87654321_________________________________________]
((in[25 + inPos] & 36028797018963967L) >>> 41)) & 255);
out[178 + outPos] = (byte)((
// [__543210]
// [432109_________________________________________________]
((in[25 + inPos] & 36028797018963967L) >>> 49)
| // [76______]
// [_____________________________________________________10]
((in[26 + inPos] & 36028797018963967L) << 6)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [_____________________________________________98765432__]
((in[26 + inPos] & 36028797018963967L) >>> 2)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [_____________________________________76543210__________]
((in[26 + inPos] & 36028797018963967L) >>> 10)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [_____________________________54321098__________________]
((in[26 + inPos] & 36028797018963967L) >>> 18)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [_____________________32109876__________________________]
((in[26 + inPos] & 36028797018963967L) >>> 26)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [_____________10987654__________________________________]
((in[26 + inPos] & 36028797018963967L) >>> 34)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [_____98765432__________________________________________]
((in[26 + inPos] & 36028797018963967L) >>> 42)) & 255);
out[185 + outPos] = (byte)((
// [___43210]
// [43210__________________________________________________]
((in[26 + inPos] & 36028797018963967L) >>> 50)
| // [765_____]
// [____________________________________________________210]
((in[27 + inPos] & 36028797018963967L) << 5)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [____________________________________________09876543___]
((in[27 + inPos] & 36028797018963967L) >>> 3)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [____________________________________87654321___________]
((in[27 + inPos] & 36028797018963967L) >>> 11)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [____________________________65432109___________________]
((in[27 + inPos] & 36028797018963967L) >>> 19)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [____________________43210987___________________________]
((in[27 + inPos] & 36028797018963967L) >>> 27)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [____________21098765___________________________________]
((in[27 + inPos] & 36028797018963967L) >>> 35)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [____09876543___________________________________________]
((in[27 + inPos] & 36028797018963967L) >>> 43)) & 255);
out[192 + outPos] = (byte)((
// [____3210]
// [4321___________________________________________________]
((in[27 + inPos] & 36028797018963967L) >>> 51)
| // [7654____]
// [___________________________________________________3210]
((in[28 + inPos] & 36028797018963967L) << 4)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [___________________________________________10987654____]
((in[28 + inPos] & 36028797018963967L) >>> 4)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [___________________________________98765432____________]
((in[28 + inPos] & 36028797018963967L) >>> 12)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [___________________________76543210____________________]
((in[28 + inPos] & 36028797018963967L) >>> 20)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [___________________54321098____________________________]
((in[28 + inPos] & 36028797018963967L) >>> 28)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [___________32109876____________________________________]
((in[28 + inPos] & 36028797018963967L) >>> 36)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [___10987654____________________________________________]
((in[28 + inPos] & 36028797018963967L) >>> 44)) & 255);
out[199 + outPos] = (byte)((
// [_____210]
// [432____________________________________________________]
((in[28 + inPos] & 36028797018963967L) >>> 52)
| // [76543___]
// [__________________________________________________43210]
((in[29 + inPos] & 36028797018963967L) << 3)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [__________________________________________21098765_____]
((in[29 + inPos] & 36028797018963967L) >>> 5)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [__________________________________09876543_____________]
((in[29 + inPos] & 36028797018963967L) >>> 13)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [__________________________87654321_____________________]
((in[29 + inPos] & 36028797018963967L) >>> 21)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [__________________65432109_____________________________]
((in[29 + inPos] & 36028797018963967L) >>> 29)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [__________43210987_____________________________________]
((in[29 + inPos] & 36028797018963967L) >>> 37)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [__21098765_____________________________________________]
((in[29 + inPos] & 36028797018963967L) >>> 45)) & 255);
out[206 + outPos] = (byte)((
// [______10]
// [43_____________________________________________________]
((in[29 + inPos] & 36028797018963967L) >>> 53)
| // [765432__]
// [_________________________________________________543210]
((in[30 + inPos] & 36028797018963967L) << 2)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [_________________________________________32109876______]
((in[30 + inPos] & 36028797018963967L) >>> 6)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [_________________________________10987654______________]
((in[30 + inPos] & 36028797018963967L) >>> 14)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [_________________________98765432______________________]
((in[30 + inPos] & 36028797018963967L) >>> 22)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [_________________76543210______________________________]
((in[30 + inPos] & 36028797018963967L) >>> 30)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [_________54321098______________________________________]
((in[30 + inPos] & 36028797018963967L) >>> 38)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [_32109876______________________________________________]
((in[30 + inPos] & 36028797018963967L) >>> 46)) & 255);
out[213 + outPos] = (byte)((
// [_______0]
// [4______________________________________________________]
((in[30 + inPos] & 36028797018963967L) >>> 54)
| // [7654321_]
// [________________________________________________6543210]
((in[31 + inPos] & 36028797018963967L) << 1)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [________________________________________43210987_______]
((in[31 + inPos] & 36028797018963967L) >>> 7)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [________________________________21098765_______________]
((in[31 + inPos] & 36028797018963967L) >>> 15)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [________________________09876543_______________________]
((in[31 + inPos] & 36028797018963967L) >>> 23)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [________________87654321_______________________________]
((in[31 + inPos] & 36028797018963967L) >>> 31)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [________65432109_______________________________________]
((in[31 + inPos] & 36028797018963967L) >>> 39)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [43210987_______________________________________________]
((in[31 + inPos] & 36028797018963967L) >>> 47)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 36028797018963967L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in[ 6 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in[ 7 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in[ 8 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in[ 9 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in[10 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in[11 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in[12 + inPos]) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in[13 + inPos]) << 49) & 36028797018963967L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in[14 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in[15 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in[16 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in[17 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in[18 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in[19 + inPos]) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in[20 + inPos]) << 50) & 36028797018963967L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in[21 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in[22 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in[23 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in[24 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in[25 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in[26 + inPos]) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in[27 + inPos]) << 51) & 36028797018963967L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in[30 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in[31 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in[32 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in[33 + inPos]) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in[34 + inPos]) << 52) & 36028797018963967L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in[34 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in[35 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in[36 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in[37 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in[38 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in[39 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in[40 + inPos]) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in[41 + inPos]) << 53) & 36028797018963967L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in[43 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in[44 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in[45 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in[46 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in[47 + inPos]) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in[48 + inPos]) << 54) & 36028797018963967L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in[48 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in[49 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in[50 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in[51 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in[52 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in[53 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in[54 + inPos]) << 47) & 36028797018963967L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 36028797018963967L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in.get( 6 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in.get( 7 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in.get( 8 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in.get( 9 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in.get(10 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in.get(11 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in.get(12 + inPos)) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in.get(13 + inPos)) << 49) & 36028797018963967L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in.get(15 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in.get(16 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in.get(17 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in.get(18 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in.get(19 + inPos)) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in.get(20 + inPos)) << 50) & 36028797018963967L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in.get(22 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in.get(23 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in.get(24 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in.get(25 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in.get(26 + inPos)) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in.get(27 + inPos)) << 51) & 36028797018963967L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in.get(30 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in.get(31 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in.get(32 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in.get(33 + inPos)) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in.get(34 + inPos)) << 52) & 36028797018963967L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in.get(34 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in.get(35 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in.get(36 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in.get(37 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in.get(38 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in.get(39 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in.get(40 + inPos)) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in.get(41 + inPos)) << 53) & 36028797018963967L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in.get(43 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in.get(44 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in.get(45 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in.get(46 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in.get(47 + inPos)) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in.get(48 + inPos)) << 54) & 36028797018963967L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in.get(48 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in.get(49 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in.get(50 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in.get(51 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in.get(52 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in.get(53 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in.get(54 + inPos)) << 47) & 36028797018963967L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 36028797018963967L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in[ 6 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in[ 7 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in[ 8 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in[ 9 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in[10 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in[11 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in[12 + inPos]) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in[13 + inPos]) << 49) & 36028797018963967L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in[13 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in[14 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in[15 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in[16 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in[17 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in[18 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in[19 + inPos]) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in[20 + inPos]) << 50) & 36028797018963967L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in[20 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in[21 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in[22 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in[23 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in[24 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in[25 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in[26 + inPos]) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in[27 + inPos]) << 51) & 36028797018963967L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in[27 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in[28 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in[29 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in[30 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in[31 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in[32 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in[33 + inPos]) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in[34 + inPos]) << 52) & 36028797018963967L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in[34 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in[35 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in[36 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in[37 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in[38 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in[39 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in[40 + inPos]) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in[41 + inPos]) << 53) & 36028797018963967L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in[41 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in[42 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in[43 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in[44 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in[45 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in[46 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in[47 + inPos]) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in[48 + inPos]) << 54) & 36028797018963967L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in[48 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in[49 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in[50 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in[51 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in[52 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in[53 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in[54 + inPos]) << 47) & 36028797018963967L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in[55 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in[56 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in[57 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in[58 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in[59 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in[60 + inPos]) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in[61 + inPos]) << 48) & 36028797018963967L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in[61 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in[62 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in[63 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in[64 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in[65 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in[66 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in[67 + inPos]) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in[68 + inPos]) << 49) & 36028797018963967L);
out[10 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in[68 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in[69 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in[70 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in[71 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in[72 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in[73 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in[74 + inPos]) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in[75 + inPos]) << 50) & 36028797018963967L);
out[11 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in[75 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in[76 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in[77 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in[78 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in[79 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in[80 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in[81 + inPos]) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in[82 + inPos]) << 51) & 36028797018963967L);
out[12 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in[85 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in[86 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in[87 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in[88 + inPos]) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in[89 + inPos]) << 52) & 36028797018963967L);
out[13 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in[89 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in[90 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in[91 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in[92 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in[93 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in[94 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in[95 + inPos]) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in[96 + inPos]) << 53) & 36028797018963967L);
out[14 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in[96 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in[97 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in[98 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in[99 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in[100 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in[101 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in[102 + inPos]) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in[103 + inPos]) << 54) & 36028797018963967L);
out[15 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in[103 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in[104 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in[105 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in[106 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in[107 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in[108 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in[109 + inPos]) << 47) & 36028797018963967L);
out[16 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in[110 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in[111 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in[112 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in[113 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in[114 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in[115 + inPos]) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in[116 + inPos]) << 48) & 36028797018963967L);
out[17 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in[116 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in[117 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in[118 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in[119 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in[120 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in[121 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in[122 + inPos]) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in[123 + inPos]) << 49) & 36028797018963967L);
out[18 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in[123 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in[124 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in[125 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in[126 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in[127 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in[128 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in[129 + inPos]) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in[130 + inPos]) << 50) & 36028797018963967L);
out[19 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in[130 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in[131 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in[132 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in[133 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in[134 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in[135 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in[136 + inPos]) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in[137 + inPos]) << 51) & 36028797018963967L);
out[20 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in[137 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in[138 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in[139 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in[140 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in[141 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in[142 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in[143 + inPos]) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in[144 + inPos]) << 52) & 36028797018963967L);
out[21 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in[144 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in[145 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in[146 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in[147 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in[148 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in[149 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in[150 + inPos]) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in[151 + inPos]) << 53) & 36028797018963967L);
out[22 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in[151 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in[152 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in[153 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in[154 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in[155 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in[156 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in[157 + inPos]) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in[158 + inPos]) << 54) & 36028797018963967L);
out[23 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in[158 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in[159 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in[160 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in[161 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in[162 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in[163 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in[164 + inPos]) << 47) & 36028797018963967L);
out[24 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in[165 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in[166 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in[167 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in[168 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in[169 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in[170 + inPos]) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in[171 + inPos]) << 48) & 36028797018963967L);
out[25 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in[171 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in[172 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in[173 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in[174 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in[175 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in[176 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in[177 + inPos]) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in[178 + inPos]) << 49) & 36028797018963967L);
out[26 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in[178 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in[179 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in[180 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in[181 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in[182 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in[183 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in[184 + inPos]) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in[185 + inPos]) << 50) & 36028797018963967L);
out[27 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in[185 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in[186 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in[187 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in[188 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in[189 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in[190 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in[191 + inPos]) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in[192 + inPos]) << 51) & 36028797018963967L);
out[28 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in[192 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in[193 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in[194 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in[195 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in[196 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in[197 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in[198 + inPos]) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in[199 + inPos]) << 52) & 36028797018963967L);
out[29 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in[199 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in[200 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in[201 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in[202 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in[203 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in[204 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in[205 + inPos]) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in[206 + inPos]) << 53) & 36028797018963967L);
out[30 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in[206 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in[207 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in[208 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in[209 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in[210 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in[211 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in[212 + inPos]) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in[213 + inPos]) << 54) & 36028797018963967L);
out[31 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in[213 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in[214 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in[215 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in[216 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in[217 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in[218 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in[219 + inPos]) << 47) & 36028797018963967L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 36028797018963967L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in.get( 6 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in.get( 7 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in.get( 8 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in.get( 9 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in.get(10 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in.get(11 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in.get(12 + inPos)) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in.get(13 + inPos)) << 49) & 36028797018963967L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in.get(13 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in.get(14 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in.get(15 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in.get(16 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in.get(17 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in.get(18 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in.get(19 + inPos)) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in.get(20 + inPos)) << 50) & 36028797018963967L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in.get(20 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in.get(21 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in.get(22 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in.get(23 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in.get(24 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in.get(25 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in.get(26 + inPos)) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in.get(27 + inPos)) << 51) & 36028797018963967L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in.get(27 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in.get(28 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in.get(29 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in.get(30 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in.get(31 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in.get(32 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in.get(33 + inPos)) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in.get(34 + inPos)) << 52) & 36028797018963967L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in.get(34 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in.get(35 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in.get(36 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in.get(37 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in.get(38 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in.get(39 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in.get(40 + inPos)) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in.get(41 + inPos)) << 53) & 36028797018963967L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in.get(41 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in.get(42 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in.get(43 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in.get(44 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in.get(45 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in.get(46 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in.get(47 + inPos)) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in.get(48 + inPos)) << 54) & 36028797018963967L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in.get(48 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in.get(49 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in.get(50 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in.get(51 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in.get(52 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in.get(53 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in.get(54 + inPos)) << 47) & 36028797018963967L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in.get(55 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in.get(56 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in.get(57 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in.get(58 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in.get(59 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in.get(60 + inPos)) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in.get(61 + inPos)) << 48) & 36028797018963967L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in.get(61 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in.get(62 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in.get(63 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in.get(64 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in.get(65 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in.get(66 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in.get(67 + inPos)) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in.get(68 + inPos)) << 49) & 36028797018963967L);
out[10 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in.get(68 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in.get(69 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in.get(70 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in.get(71 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in.get(72 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in.get(73 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in.get(74 + inPos)) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in.get(75 + inPos)) << 50) & 36028797018963967L);
out[11 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in.get(75 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in.get(76 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in.get(77 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in.get(78 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in.get(79 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in.get(80 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in.get(81 + inPos)) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in.get(82 + inPos)) << 51) & 36028797018963967L);
out[12 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in.get(85 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in.get(86 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in.get(87 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in.get(88 + inPos)) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in.get(89 + inPos)) << 52) & 36028797018963967L);
out[13 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in.get(89 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in.get(90 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in.get(91 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in.get(92 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in.get(93 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in.get(94 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in.get(95 + inPos)) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in.get(96 + inPos)) << 53) & 36028797018963967L);
out[14 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in.get(96 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in.get(97 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in.get(98 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in.get(99 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in.get(100 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in.get(101 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in.get(102 + inPos)) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in.get(103 + inPos)) << 54) & 36028797018963967L);
out[15 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in.get(103 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in.get(104 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in.get(105 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in.get(106 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in.get(107 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in.get(108 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in.get(109 + inPos)) << 47) & 36028797018963967L);
out[16 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in.get(110 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in.get(111 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in.get(112 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in.get(113 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in.get(114 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in.get(115 + inPos)) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in.get(116 + inPos)) << 48) & 36028797018963967L);
out[17 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in.get(116 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in.get(117 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in.get(118 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in.get(119 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in.get(120 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in.get(121 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in.get(122 + inPos)) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in.get(123 + inPos)) << 49) & 36028797018963967L);
out[18 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in.get(123 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in.get(124 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in.get(125 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in.get(126 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in.get(127 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in.get(128 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in.get(129 + inPos)) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in.get(130 + inPos)) << 50) & 36028797018963967L);
out[19 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in.get(130 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in.get(131 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in.get(132 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in.get(133 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in.get(134 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in.get(135 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in.get(136 + inPos)) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in.get(137 + inPos)) << 51) & 36028797018963967L);
out[20 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in.get(137 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in.get(138 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in.get(139 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in.get(140 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in.get(141 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in.get(142 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in.get(143 + inPos)) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in.get(144 + inPos)) << 52) & 36028797018963967L);
out[21 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in.get(144 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in.get(145 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in.get(146 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in.get(147 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in.get(148 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in.get(149 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in.get(150 + inPos)) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in.get(151 + inPos)) << 53) & 36028797018963967L);
out[22 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in.get(151 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in.get(152 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in.get(153 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in.get(154 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in.get(155 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in.get(156 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in.get(157 + inPos)) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in.get(158 + inPos)) << 54) & 36028797018963967L);
out[23 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in.get(158 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in.get(159 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in.get(160 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in.get(161 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in.get(162 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in.get(163 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in.get(164 + inPos)) << 47) & 36028797018963967L);
out[24 + outPos] =
// [76543210]
// [_______________________________________________76543210]
((((long)in.get(165 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________54321098________]
((((long)in.get(166 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________32109876________________]
((((long)in.get(167 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________10987654________________________]
((((long)in.get(168 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________98765432________________________________]
((((long)in.get(169 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______76543210________________________________________]
((((long)in.get(170 + inPos)) << 40) & 281474976710655L)
| // [_6543210]
// [4321098________________________________________________]
((((long)in.get(171 + inPos)) << 48) & 36028797018963967L);
out[25 + outPos] =
// [7_______]
// [______________________________________________________0]
((((long)in.get(171 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________87654321_]
((((long)in.get(172 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________65432109_________]
((((long)in.get(173 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________43210987_________________]
((((long)in.get(174 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________21098765_________________________]
((((long)in.get(175 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________09876543_________________________________]
((((long)in.get(176 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______87654321_________________________________________]
((((long)in.get(177 + inPos)) << 41) & 562949953421311L)
| // [__543210]
// [432109_________________________________________________]
((((long)in.get(178 + inPos)) << 49) & 36028797018963967L);
out[26 + outPos] =
// [76______]
// [_____________________________________________________10]
((((long)in.get(178 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________98765432__]
((((long)in.get(179 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________76543210__________]
((((long)in.get(180 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________54321098__________________]
((((long)in.get(181 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________32109876__________________________]
((((long)in.get(182 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________10987654__________________________________]
((((long)in.get(183 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____98765432__________________________________________]
((((long)in.get(184 + inPos)) << 42) & 1125899906842623L)
| // [___43210]
// [43210__________________________________________________]
((((long)in.get(185 + inPos)) << 50) & 36028797018963967L);
out[27 + outPos] =
// [765_____]
// [____________________________________________________210]
((((long)in.get(185 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________09876543___]
((((long)in.get(186 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________87654321___________]
((((long)in.get(187 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________65432109___________________]
((((long)in.get(188 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________43210987___________________________]
((((long)in.get(189 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________21098765___________________________________]
((((long)in.get(190 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____09876543___________________________________________]
((((long)in.get(191 + inPos)) << 43) & 2251799813685247L)
| // [____3210]
// [4321___________________________________________________]
((((long)in.get(192 + inPos)) << 51) & 36028797018963967L);
out[28 + outPos] =
// [7654____]
// [___________________________________________________3210]
((((long)in.get(192 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________10987654____]
((((long)in.get(193 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________98765432____________]
((((long)in.get(194 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________76543210____________________]
((((long)in.get(195 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________54321098____________________________]
((((long)in.get(196 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________32109876____________________________________]
((((long)in.get(197 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___10987654____________________________________________]
((((long)in.get(198 + inPos)) << 44) & 4503599627370495L)
| // [_____210]
// [432____________________________________________________]
((((long)in.get(199 + inPos)) << 52) & 36028797018963967L);
out[29 + outPos] =
// [76543___]
// [__________________________________________________43210]
((((long)in.get(199 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________21098765_____]
((((long)in.get(200 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________09876543_____________]
((((long)in.get(201 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________87654321_____________________]
((((long)in.get(202 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________65432109_____________________________]
((((long)in.get(203 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________43210987_____________________________________]
((((long)in.get(204 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__21098765_____________________________________________]
((((long)in.get(205 + inPos)) << 45) & 9007199254740991L)
| // [______10]
// [43_____________________________________________________]
((((long)in.get(206 + inPos)) << 53) & 36028797018963967L);
out[30 + outPos] =
// [765432__]
// [_________________________________________________543210]
((((long)in.get(206 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________32109876______]
((((long)in.get(207 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________10987654______________]
((((long)in.get(208 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________98765432______________________]
((((long)in.get(209 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________76543210______________________________]
((((long)in.get(210 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________54321098______________________________________]
((((long)in.get(211 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_32109876______________________________________________]
((((long)in.get(212 + inPos)) << 46) & 18014398509481983L)
| // [_______0]
// [4______________________________________________________]
((((long)in.get(213 + inPos)) << 54) & 36028797018963967L);
out[31 + outPos] =
// [7654321_]
// [________________________________________________6543210]
((((long)in.get(213 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________43210987_______]
((((long)in.get(214 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________21098765_______________]
((((long)in.get(215 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________09876543_______________________]
((((long)in.get(216 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________87654321_______________________________]
((((long)in.get(217 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________65432109_______________________________________]
((((long)in.get(218 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [43210987_______________________________________________]
((((long)in.get(219 + inPos)) << 47) & 36028797018963967L);
}
}
private static final class Packer56 extends BytePackerForLong {
private Packer56() {
super(56);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 0 + inPos] & 72057594037927935L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 0 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 1 + inPos] & 72057594037927935L))) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 1 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 2 + inPos] & 72057594037927935L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 2 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 3 + inPos] & 72057594037927935L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 3 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 4 + inPos] & 72057594037927935L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 4 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 5 + inPos] & 72057594037927935L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 5 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 6 + inPos] & 72057594037927935L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 6 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 7 + inPos] & 72057594037927935L))) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 7 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 48)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 0 + inPos] & 72057594037927935L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 0 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 0 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 1 + inPos] & 72057594037927935L))) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 1 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 1 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 2 + inPos] & 72057594037927935L))) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 2 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 2 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 3 + inPos] & 72057594037927935L))) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 3 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 3 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 4 + inPos] & 72057594037927935L))) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 4 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 4 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 5 + inPos] & 72057594037927935L))) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 5 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 5 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 6 + inPos] & 72057594037927935L))) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 6 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 6 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 7 + inPos] & 72057594037927935L))) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 7 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 7 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 8 + inPos] & 72057594037927935L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 8 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 8 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 8 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 8 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 8 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 8 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[ 9 + inPos] & 72057594037927935L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[ 9 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[ 9 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[ 9 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[ 9 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[ 9 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[ 9 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[10 + inPos] & 72057594037927935L))) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[10 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[10 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[10 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[10 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[10 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[10 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[11 + inPos] & 72057594037927935L))) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[11 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[11 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[11 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[11 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[11 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[11 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[12 + inPos] & 72057594037927935L))) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[12 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[12 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[12 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[12 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[12 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[12 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[13 + inPos] & 72057594037927935L))) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[13 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[13 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[13 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[13 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[13 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[13 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[14 + inPos] & 72057594037927935L))) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[14 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[14 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[14 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[14 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[14 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[14 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[15 + inPos] & 72057594037927935L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[15 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[15 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[15 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[15 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[15 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[15 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[16 + inPos] & 72057594037927935L))) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[16 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[16 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[16 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[16 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[16 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[16 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[17 + inPos] & 72057594037927935L))) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[17 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[17 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[17 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[17 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[17 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[17 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[18 + inPos] & 72057594037927935L))) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[18 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[18 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[18 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[18 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[18 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[18 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[19 + inPos] & 72057594037927935L))) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[19 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[19 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[19 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[19 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[19 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[19 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[20 + inPos] & 72057594037927935L))) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[20 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[20 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[20 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[20 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[20 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[20 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[21 + inPos] & 72057594037927935L))) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[21 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[21 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[21 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[21 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[21 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[21 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[22 + inPos] & 72057594037927935L))) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[22 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[22 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[22 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[22 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[22 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[22 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[23 + inPos] & 72057594037927935L))) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[23 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[23 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[23 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[23 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[23 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[23 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[24 + inPos] & 72057594037927935L))) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[24 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[24 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[24 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[24 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[24 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[24 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[25 + inPos] & 72057594037927935L))) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[25 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[25 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[25 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[25 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[25 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[25 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[26 + inPos] & 72057594037927935L))) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[26 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[26 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[26 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[26 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[26 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[26 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[27 + inPos] & 72057594037927935L))) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[27 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[27 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[27 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[27 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[27 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[27 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[28 + inPos] & 72057594037927935L))) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[28 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[28 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[28 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[28 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[28 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[28 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[29 + inPos] & 72057594037927935L))) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[29 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[29 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[29 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[29 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[29 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[29 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[30 + inPos] & 72057594037927935L))) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[30 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[30 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[30 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[30 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[30 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[30 + inPos] & 72057594037927935L) >>> 48)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [________________________________________________76543210]
((in[31 + inPos] & 72057594037927935L))) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [________________________________________54321098________]
((in[31 + inPos] & 72057594037927935L) >>> 8)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [________________________________32109876________________]
((in[31 + inPos] & 72057594037927935L) >>> 16)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [________________________10987654________________________]
((in[31 + inPos] & 72057594037927935L) >>> 24)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [________________98765432________________________________]
((in[31 + inPos] & 72057594037927935L) >>> 32)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [________76543210________________________________________]
((in[31 + inPos] & 72057594037927935L) >>> 40)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [54321098________________________________________________]
((in[31 + inPos] & 72057594037927935L) >>> 48)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[ 8 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[ 9 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[10 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[11 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[12 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[13 + inPos]) << 48) & 72057594037927935L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[15 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[16 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[17 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[18 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[19 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[20 + inPos]) << 48) & 72057594037927935L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[24 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[25 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[26 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[27 + inPos]) << 48) & 72057594037927935L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[29 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[30 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[31 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[32 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[33 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[34 + inPos]) << 48) & 72057594037927935L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[38 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[39 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[40 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[41 + inPos]) << 48) & 72057594037927935L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[45 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[46 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[47 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[48 + inPos]) << 48) & 72057594037927935L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[49 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[50 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[51 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[52 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[53 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[54 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[55 + inPos]) << 48) & 72057594037927935L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get( 8 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get( 9 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(10 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(11 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(12 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(13 + inPos)) << 48) & 72057594037927935L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(16 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(17 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(18 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(19 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(20 + inPos)) << 48) & 72057594037927935L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(24 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(25 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(26 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(27 + inPos)) << 48) & 72057594037927935L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(30 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(31 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(32 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(33 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(34 + inPos)) << 48) & 72057594037927935L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(38 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(39 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(40 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(41 + inPos)) << 48) & 72057594037927935L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(45 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(46 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(47 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(48 + inPos)) << 48) & 72057594037927935L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(49 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(50 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(51 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(52 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(53 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(54 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(55 + inPos)) << 48) & 72057594037927935L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[ 7 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[ 8 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[ 9 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[10 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[11 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[12 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[13 + inPos]) << 48) & 72057594037927935L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[14 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[15 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[16 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[17 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[18 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[19 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[20 + inPos]) << 48) & 72057594037927935L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[21 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[22 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[23 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[24 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[25 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[26 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[27 + inPos]) << 48) & 72057594037927935L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[28 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[29 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[30 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[31 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[32 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[33 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[34 + inPos]) << 48) & 72057594037927935L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[35 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[36 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[37 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[38 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[39 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[40 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[41 + inPos]) << 48) & 72057594037927935L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[42 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[43 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[44 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[45 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[46 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[47 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[48 + inPos]) << 48) & 72057594037927935L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[49 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[50 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[51 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[52 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[53 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[54 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[55 + inPos]) << 48) & 72057594037927935L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[57 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[58 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[59 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[60 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[61 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[62 + inPos]) << 48) & 72057594037927935L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[66 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[67 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[68 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[69 + inPos]) << 48) & 72057594037927935L);
out[10 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[70 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[71 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[72 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[73 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[74 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[75 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[76 + inPos]) << 48) & 72057594037927935L);
out[11 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[77 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[78 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[79 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[80 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[81 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[82 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[83 + inPos]) << 48) & 72057594037927935L);
out[12 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[84 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[85 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[86 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[87 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[88 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[89 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[90 + inPos]) << 48) & 72057594037927935L);
out[13 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[91 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[92 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[93 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[94 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[95 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[96 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[97 + inPos]) << 48) & 72057594037927935L);
out[14 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[98 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[99 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[100 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[101 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[102 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[103 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[104 + inPos]) << 48) & 72057594037927935L);
out[15 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[108 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[109 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[110 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[111 + inPos]) << 48) & 72057594037927935L);
out[16 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[112 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[113 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[114 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[115 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[116 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[117 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[118 + inPos]) << 48) & 72057594037927935L);
out[17 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[119 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[120 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[121 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[122 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[123 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[124 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[125 + inPos]) << 48) & 72057594037927935L);
out[18 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[126 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[127 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[128 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[129 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[130 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[131 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[132 + inPos]) << 48) & 72057594037927935L);
out[19 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[133 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[134 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[135 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[136 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[137 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[138 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[139 + inPos]) << 48) & 72057594037927935L);
out[20 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[140 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[141 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[142 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[143 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[144 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[145 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[146 + inPos]) << 48) & 72057594037927935L);
out[21 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[147 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[148 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[149 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[150 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[151 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[152 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[153 + inPos]) << 48) & 72057594037927935L);
out[22 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[154 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[155 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[156 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[157 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[158 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[159 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[160 + inPos]) << 48) & 72057594037927935L);
out[23 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[161 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[162 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[163 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[164 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[165 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[166 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[167 + inPos]) << 48) & 72057594037927935L);
out[24 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[168 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[169 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[170 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[171 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[172 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[173 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[174 + inPos]) << 48) & 72057594037927935L);
out[25 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[175 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[176 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[177 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[178 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[179 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[180 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[181 + inPos]) << 48) & 72057594037927935L);
out[26 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[182 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[183 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[184 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[185 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[186 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[187 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[188 + inPos]) << 48) & 72057594037927935L);
out[27 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[189 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[190 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[191 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[192 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[193 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[194 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[195 + inPos]) << 48) & 72057594037927935L);
out[28 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[196 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[197 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[198 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[199 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[200 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[201 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[202 + inPos]) << 48) & 72057594037927935L);
out[29 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[203 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[204 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[205 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[206 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[207 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[208 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[209 + inPos]) << 48) & 72057594037927935L);
out[30 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[210 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[211 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[212 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[213 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[214 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[215 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[216 + inPos]) << 48) & 72057594037927935L);
out[31 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in[217 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in[218 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in[219 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in[220 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in[221 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in[222 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in[223 + inPos]) << 48) & 72057594037927935L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get( 7 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get( 8 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get( 9 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(10 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(11 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(12 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(13 + inPos)) << 48) & 72057594037927935L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(14 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(15 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(16 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(17 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(18 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(19 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(20 + inPos)) << 48) & 72057594037927935L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(21 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(22 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(23 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(24 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(25 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(26 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(27 + inPos)) << 48) & 72057594037927935L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(28 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(29 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(30 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(31 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(32 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(33 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(34 + inPos)) << 48) & 72057594037927935L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(35 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(36 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(37 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(38 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(39 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(40 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(41 + inPos)) << 48) & 72057594037927935L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(42 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(43 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(44 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(45 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(46 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(47 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(48 + inPos)) << 48) & 72057594037927935L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(49 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(50 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(51 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(52 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(53 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(54 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(55 + inPos)) << 48) & 72057594037927935L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(58 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(59 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(60 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(61 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(62 + inPos)) << 48) & 72057594037927935L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(66 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(67 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(68 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(69 + inPos)) << 48) & 72057594037927935L);
out[10 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(70 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(71 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(72 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(73 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(74 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(75 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(76 + inPos)) << 48) & 72057594037927935L);
out[11 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(77 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(78 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(79 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(80 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(81 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(82 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(83 + inPos)) << 48) & 72057594037927935L);
out[12 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(84 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(85 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(86 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(87 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(88 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(89 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(90 + inPos)) << 48) & 72057594037927935L);
out[13 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(91 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(92 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(93 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(94 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(95 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(96 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(97 + inPos)) << 48) & 72057594037927935L);
out[14 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(98 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(99 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(100 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(101 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(102 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(103 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(104 + inPos)) << 48) & 72057594037927935L);
out[15 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(108 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(109 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(110 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(111 + inPos)) << 48) & 72057594037927935L);
out[16 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(112 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(113 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(114 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(115 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(116 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(117 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(118 + inPos)) << 48) & 72057594037927935L);
out[17 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(119 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(120 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(121 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(122 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(123 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(124 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(125 + inPos)) << 48) & 72057594037927935L);
out[18 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(126 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(127 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(128 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(129 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(130 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(131 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(132 + inPos)) << 48) & 72057594037927935L);
out[19 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(133 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(134 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(135 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(136 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(137 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(138 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(139 + inPos)) << 48) & 72057594037927935L);
out[20 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(140 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(141 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(142 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(143 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(144 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(145 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(146 + inPos)) << 48) & 72057594037927935L);
out[21 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(147 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(148 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(149 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(150 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(151 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(152 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(153 + inPos)) << 48) & 72057594037927935L);
out[22 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(154 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(155 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(156 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(157 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(158 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(159 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(160 + inPos)) << 48) & 72057594037927935L);
out[23 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(161 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(162 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(163 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(164 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(165 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(166 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(167 + inPos)) << 48) & 72057594037927935L);
out[24 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(168 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(169 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(170 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(171 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(172 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(173 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(174 + inPos)) << 48) & 72057594037927935L);
out[25 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(175 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(176 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(177 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(178 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(179 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(180 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(181 + inPos)) << 48) & 72057594037927935L);
out[26 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(182 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(183 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(184 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(185 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(186 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(187 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(188 + inPos)) << 48) & 72057594037927935L);
out[27 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(189 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(190 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(191 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(192 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(193 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(194 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(195 + inPos)) << 48) & 72057594037927935L);
out[28 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(196 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(197 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(198 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(199 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(200 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(201 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(202 + inPos)) << 48) & 72057594037927935L);
out[29 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(203 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(204 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(205 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(206 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(207 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(208 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(209 + inPos)) << 48) & 72057594037927935L);
out[30 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(210 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(211 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(212 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(213 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(214 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(215 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(216 + inPos)) << 48) & 72057594037927935L);
out[31 + outPos] =
// [76543210]
// [________________________________________________76543210]
((((long)in.get(217 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________54321098________]
((((long)in.get(218 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________32109876________________]
((((long)in.get(219 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________10987654________________________]
((((long)in.get(220 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________98765432________________________________]
((((long)in.get(221 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________76543210________________________________________]
((((long)in.get(222 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [54321098________________________________________________]
((((long)in.get(223 + inPos)) << 48) & 72057594037927935L);
}
}
private static final class Packer57 extends BytePackerForLong {
private Packer57() {
super(57);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________________________76543210]
((in[ 0 + inPos] & 144115188075855871L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________________________54321098________]
((in[ 0 + inPos] & 144115188075855871L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________________________10987654________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_________________98765432________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_________76543210________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_54321098________________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_______0]
// [6________________________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 56)
| // [7654321_]
// [__________________________________________________6543210]
((in[ 1 + inPos] & 144115188075855871L) << 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________________43210987_______]
((in[ 1 + inPos] & 144115188075855871L) >>> 7)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_______________]
((in[ 1 + inPos] & 144115188075855871L) >>> 15)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_______________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 23)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________87654321_______________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 31)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________65432109_______________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 39)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__43210987_______________________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 47)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [65_______________________________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 55)
| // [765432__]
// [___________________________________________________543210]
((in[ 2 + inPos] & 144115188075855871L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [___________________________________________32109876______]
((in[ 2 + inPos] & 144115188075855871L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654______________]
((in[ 2 + inPos] & 144115188075855871L) >>> 14)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___________________________98765432______________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 22)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [___________________76543210______________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 30)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [___________54321098______________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 38)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [___32109876______________________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 46)) & 255);
out[21 + outPos] = (byte)((
// [_____210]
// [654______________________________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 54)
| // [76543___]
// [____________________________________________________43210]
((in[ 3 + inPos] & 144115188075855871L) << 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________________21098765_____]
((in[ 3 + inPos] & 144115188075855871L) >>> 5)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543_____________]
((in[ 3 + inPos] & 144115188075855871L) >>> 13)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_____________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 21)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________65432109_____________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 29)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________43210987_____________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 37)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____21098765_____________________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 45)) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [6543_____________________________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 53)
| // [7654____]
// [_____________________________________________________3210]
((in[ 4 + inPos] & 144115188075855871L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____________________________________________10987654____]
((in[ 4 + inPos] & 144115188075855871L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432____________]
((in[ 4 + inPos] & 144115188075855871L) >>> 12)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210____________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 20)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_____________________54321098____________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 28)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_____________32109876____________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 36)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____10987654____________________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 44)) & 255);
out[35 + outPos] = (byte)((
// [___43210]
// [65432____________________________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 52)
| // [765_____]
// [______________________________________________________210]
((in[ 5 + inPos] & 144115188075855871L) << 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________________________________________09876543___]
((in[ 5 + inPos] & 144115188075855871L) >>> 3)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321___________]
((in[ 5 + inPos] & 144115188075855871L) >>> 11)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______________________________65432109___________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 19)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________43210987___________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 27)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________21098765___________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 35)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______09876543___________________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 43)) & 255);
out[42 + outPos] = (byte)((
// [__543210]
// [654321___________________________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 51)
| // [76______]
// [_______________________________________________________10]
((in[ 6 + inPos] & 144115188075855871L) << 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_______________________________________________98765432__]
((in[ 6 + inPos] & 144115188075855871L) >>> 2)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210__________]
((in[ 6 + inPos] & 144115188075855871L) >>> 10)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098__________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 18)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_______________________32109876__________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 26)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______________10987654__________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 34)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______98765432__________________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 42)) & 255);
out[49 + outPos] = (byte)((
// [_6543210]
// [6543210__________________________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 50)
| // [7_______]
// [________________________________________________________0]
((in[ 7 + inPos] & 144115188075855871L) << 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________________87654321_]
((in[ 7 + inPos] & 144115188075855871L) >>> 1)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________________65432109_________]
((in[ 7 + inPos] & 144115188075855871L) >>> 9)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 17)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________21098765_________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 25)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________09876543_________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 33)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________87654321_________________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 41)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [65432109_________________________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 49)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_________________________________________________76543210]
((in[ 0 + inPos] & 144115188075855871L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_________________________________________54321098________]
((in[ 0 + inPos] & 144115188075855871L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_________________________10987654________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_________________98765432________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_________76543210________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_54321098________________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_______0]
// [6________________________________________________________]
((in[ 0 + inPos] & 144115188075855871L) >>> 56)
| // [7654321_]
// [__________________________________________________6543210]
((in[ 1 + inPos] & 144115188075855871L) << 1)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________________43210987_______]
((in[ 1 + inPos] & 144115188075855871L) >>> 7)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_______________]
((in[ 1 + inPos] & 144115188075855871L) >>> 15)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_______________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 23)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________87654321_______________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 31)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________65432109_______________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 39)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__43210987_______________________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 47)) & 255);
out[14 + outPos] = (byte)((
// [______10]
// [65_______________________________________________________]
((in[ 1 + inPos] & 144115188075855871L) >>> 55)
| // [765432__]
// [___________________________________________________543210]
((in[ 2 + inPos] & 144115188075855871L) << 2)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [___________________________________________32109876______]
((in[ 2 + inPos] & 144115188075855871L) >>> 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654______________]
((in[ 2 + inPos] & 144115188075855871L) >>> 14)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [___________________________98765432______________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 22)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [___________________76543210______________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 30)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [___________54321098______________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 38)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [___32109876______________________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 46)) & 255);
out[21 + outPos] = (byte)((
// [_____210]
// [654______________________________________________________]
((in[ 2 + inPos] & 144115188075855871L) >>> 54)
| // [76543___]
// [____________________________________________________43210]
((in[ 3 + inPos] & 144115188075855871L) << 3)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [____________________________________________21098765_____]
((in[ 3 + inPos] & 144115188075855871L) >>> 5)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543_____________]
((in[ 3 + inPos] & 144115188075855871L) >>> 13)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_____________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 21)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________65432109_____________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 29)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________43210987_____________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 37)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____21098765_____________________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 45)) & 255);
out[28 + outPos] = (byte)((
// [____3210]
// [6543_____________________________________________________]
((in[ 3 + inPos] & 144115188075855871L) >>> 53)
| // [7654____]
// [_____________________________________________________3210]
((in[ 4 + inPos] & 144115188075855871L) << 4)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [_____________________________________________10987654____]
((in[ 4 + inPos] & 144115188075855871L) >>> 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432____________]
((in[ 4 + inPos] & 144115188075855871L) >>> 12)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210____________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 20)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_____________________54321098____________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 28)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_____________32109876____________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 36)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_____10987654____________________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 44)) & 255);
out[35 + outPos] = (byte)((
// [___43210]
// [65432____________________________________________________]
((in[ 4 + inPos] & 144115188075855871L) >>> 52)
| // [765_____]
// [______________________________________________________210]
((in[ 5 + inPos] & 144115188075855871L) << 5)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________________________________________09876543___]
((in[ 5 + inPos] & 144115188075855871L) >>> 3)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321___________]
((in[ 5 + inPos] & 144115188075855871L) >>> 11)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [______________________________65432109___________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 19)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________43210987___________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 27)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________21098765___________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 35)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______09876543___________________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 43)) & 255);
out[42 + outPos] = (byte)((
// [__543210]
// [654321___________________________________________________]
((in[ 5 + inPos] & 144115188075855871L) >>> 51)
| // [76______]
// [_______________________________________________________10]
((in[ 6 + inPos] & 144115188075855871L) << 6)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [_______________________________________________98765432__]
((in[ 6 + inPos] & 144115188075855871L) >>> 2)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210__________]
((in[ 6 + inPos] & 144115188075855871L) >>> 10)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098__________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 18)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_______________________32109876__________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 26)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_______________10987654__________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 34)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_______98765432__________________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 42)) & 255);
out[49 + outPos] = (byte)((
// [_6543210]
// [6543210__________________________________________________]
((in[ 6 + inPos] & 144115188075855871L) >>> 50)
| // [7_______]
// [________________________________________________________0]
((in[ 7 + inPos] & 144115188075855871L) << 7)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________________87654321_]
((in[ 7 + inPos] & 144115188075855871L) >>> 1)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________________65432109_________]
((in[ 7 + inPos] & 144115188075855871L) >>> 9)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 17)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________21098765_________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 25)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________09876543_________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 33)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________87654321_________________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 41)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [65432109_________________________________________________]
((in[ 7 + inPos] & 144115188075855871L) >>> 49)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [_________________________________________________76543210]
((in[ 8 + inPos] & 144115188075855871L))) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [_________________________________________54321098________]
((in[ 8 + inPos] & 144115188075855871L) >>> 8)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 16)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [_________________________10987654________________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 24)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [_________________98765432________________________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 32)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_________76543210________________________________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 40)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_54321098________________________________________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 48)) & 255);
out[64 + outPos] = (byte)((
// [_______0]
// [6________________________________________________________]
((in[ 8 + inPos] & 144115188075855871L) >>> 56)
| // [7654321_]
// [__________________________________________________6543210]
((in[ 9 + inPos] & 144115188075855871L) << 1)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [__________________________________________43210987_______]
((in[ 9 + inPos] & 144115188075855871L) >>> 7)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_______________]
((in[ 9 + inPos] & 144115188075855871L) >>> 15)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_______________________]
((in[ 9 + inPos] & 144115188075855871L) >>> 23)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [__________________87654321_______________________________]
((in[ 9 + inPos] & 144115188075855871L) >>> 31)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________65432109_______________________________________]
((in[ 9 + inPos] & 144115188075855871L) >>> 39)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__43210987_______________________________________________]
((in[ 9 + inPos] & 144115188075855871L) >>> 47)) & 255);
out[71 + outPos] = (byte)((
// [______10]
// [65_______________________________________________________]
((in[ 9 + inPos] & 144115188075855871L) >>> 55)
| // [765432__]
// [___________________________________________________543210]
((in[10 + inPos] & 144115188075855871L) << 2)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [___________________________________________32109876______]
((in[10 + inPos] & 144115188075855871L) >>> 6)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654______________]
((in[10 + inPos] & 144115188075855871L) >>> 14)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [___________________________98765432______________________]
((in[10 + inPos] & 144115188075855871L) >>> 22)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [___________________76543210______________________________]
((in[10 + inPos] & 144115188075855871L) >>> 30)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [___________54321098______________________________________]
((in[10 + inPos] & 144115188075855871L) >>> 38)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [___32109876______________________________________________]
((in[10 + inPos] & 144115188075855871L) >>> 46)) & 255);
out[78 + outPos] = (byte)((
// [_____210]
// [654______________________________________________________]
((in[10 + inPos] & 144115188075855871L) >>> 54)
| // [76543___]
// [____________________________________________________43210]
((in[11 + inPos] & 144115188075855871L) << 3)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________________________________21098765_____]
((in[11 + inPos] & 144115188075855871L) >>> 5)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543_____________]
((in[11 + inPos] & 144115188075855871L) >>> 13)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_____________________]
((in[11 + inPos] & 144115188075855871L) >>> 21)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________________65432109_____________________________]
((in[11 + inPos] & 144115188075855871L) >>> 29)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____________43210987_____________________________________]
((in[11 + inPos] & 144115188075855871L) >>> 37)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____21098765_____________________________________________]
((in[11 + inPos] & 144115188075855871L) >>> 45)) & 255);
out[85 + outPos] = (byte)((
// [____3210]
// [6543_____________________________________________________]
((in[11 + inPos] & 144115188075855871L) >>> 53)
| // [7654____]
// [_____________________________________________________3210]
((in[12 + inPos] & 144115188075855871L) << 4)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [_____________________________________________10987654____]
((in[12 + inPos] & 144115188075855871L) >>> 4)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432____________]
((in[12 + inPos] & 144115188075855871L) >>> 12)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210____________________]
((in[12 + inPos] & 144115188075855871L) >>> 20)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_____________________54321098____________________________]
((in[12 + inPos] & 144115188075855871L) >>> 28)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_____________32109876____________________________________]
((in[12 + inPos] & 144115188075855871L) >>> 36)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_____10987654____________________________________________]
((in[12 + inPos] & 144115188075855871L) >>> 44)) & 255);
out[92 + outPos] = (byte)((
// [___43210]
// [65432____________________________________________________]
((in[12 + inPos] & 144115188075855871L) >>> 52)
| // [765_____]
// [______________________________________________________210]
((in[13 + inPos] & 144115188075855871L) << 5)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [______________________________________________09876543___]
((in[13 + inPos] & 144115188075855871L) >>> 3)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321___________]
((in[13 + inPos] & 144115188075855871L) >>> 11)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________________________65432109___________________]
((in[13 + inPos] & 144115188075855871L) >>> 19)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______________________43210987___________________________]
((in[13 + inPos] & 144115188075855871L) >>> 27)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [______________21098765___________________________________]
((in[13 + inPos] & 144115188075855871L) >>> 35)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______09876543___________________________________________]
((in[13 + inPos] & 144115188075855871L) >>> 43)) & 255);
out[99 + outPos] = (byte)((
// [__543210]
// [654321___________________________________________________]
((in[13 + inPos] & 144115188075855871L) >>> 51)
| // [76______]
// [_______________________________________________________10]
((in[14 + inPos] & 144115188075855871L) << 6)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [_______________________________________________98765432__]
((in[14 + inPos] & 144115188075855871L) >>> 2)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210__________]
((in[14 + inPos] & 144115188075855871L) >>> 10)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098__________________]
((in[14 + inPos] & 144115188075855871L) >>> 18)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [_______________________32109876__________________________]
((in[14 + inPos] & 144115188075855871L) >>> 26)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [_______________10987654__________________________________]
((in[14 + inPos] & 144115188075855871L) >>> 34)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [_______98765432__________________________________________]
((in[14 + inPos] & 144115188075855871L) >>> 42)) & 255);
out[106 + outPos] = (byte)((
// [_6543210]
// [6543210__________________________________________________]
((in[14 + inPos] & 144115188075855871L) >>> 50)
| // [7_______]
// [________________________________________________________0]
((in[15 + inPos] & 144115188075855871L) << 7)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________________________________________87654321_]
((in[15 + inPos] & 144115188075855871L) >>> 1)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________________________________65432109_________]
((in[15 + inPos] & 144115188075855871L) >>> 9)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_________________]
((in[15 + inPos] & 144115188075855871L) >>> 17)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________21098765_________________________]
((in[15 + inPos] & 144115188075855871L) >>> 25)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________09876543_________________________________]
((in[15 + inPos] & 144115188075855871L) >>> 33)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________87654321_________________________________________]
((in[15 + inPos] & 144115188075855871L) >>> 41)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [65432109_________________________________________________]
((in[15 + inPos] & 144115188075855871L) >>> 49)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_________________________________________________76543210]
((in[16 + inPos] & 144115188075855871L))) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_________________________________________54321098________]
((in[16 + inPos] & 144115188075855871L) >>> 8)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876________________]
((in[16 + inPos] & 144115188075855871L) >>> 16)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_________________________10987654________________________]
((in[16 + inPos] & 144115188075855871L) >>> 24)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [_________________98765432________________________________]
((in[16 + inPos] & 144115188075855871L) >>> 32)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [_________76543210________________________________________]
((in[16 + inPos] & 144115188075855871L) >>> 40)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [_54321098________________________________________________]
((in[16 + inPos] & 144115188075855871L) >>> 48)) & 255);
out[121 + outPos] = (byte)((
// [_______0]
// [6________________________________________________________]
((in[16 + inPos] & 144115188075855871L) >>> 56)
| // [7654321_]
// [__________________________________________________6543210]
((in[17 + inPos] & 144115188075855871L) << 1)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [__________________________________________43210987_______]
((in[17 + inPos] & 144115188075855871L) >>> 7)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_______________]
((in[17 + inPos] & 144115188075855871L) >>> 15)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_______________________]
((in[17 + inPos] & 144115188075855871L) >>> 23)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [__________________87654321_______________________________]
((in[17 + inPos] & 144115188075855871L) >>> 31)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [__________65432109_______________________________________]
((in[17 + inPos] & 144115188075855871L) >>> 39)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [__43210987_______________________________________________]
((in[17 + inPos] & 144115188075855871L) >>> 47)) & 255);
out[128 + outPos] = (byte)((
// [______10]
// [65_______________________________________________________]
((in[17 + inPos] & 144115188075855871L) >>> 55)
| // [765432__]
// [___________________________________________________543210]
((in[18 + inPos] & 144115188075855871L) << 2)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [___________________________________________32109876______]
((in[18 + inPos] & 144115188075855871L) >>> 6)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654______________]
((in[18 + inPos] & 144115188075855871L) >>> 14)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [___________________________98765432______________________]
((in[18 + inPos] & 144115188075855871L) >>> 22)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [___________________76543210______________________________]
((in[18 + inPos] & 144115188075855871L) >>> 30)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [___________54321098______________________________________]
((in[18 + inPos] & 144115188075855871L) >>> 38)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [___32109876______________________________________________]
((in[18 + inPos] & 144115188075855871L) >>> 46)) & 255);
out[135 + outPos] = (byte)((
// [_____210]
// [654______________________________________________________]
((in[18 + inPos] & 144115188075855871L) >>> 54)
| // [76543___]
// [____________________________________________________43210]
((in[19 + inPos] & 144115188075855871L) << 3)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____________________________________________21098765_____]
((in[19 + inPos] & 144115188075855871L) >>> 5)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543_____________]
((in[19 + inPos] & 144115188075855871L) >>> 13)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_____________________]
((in[19 + inPos] & 144115188075855871L) >>> 21)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [____________________65432109_____________________________]
((in[19 + inPos] & 144115188075855871L) >>> 29)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [____________43210987_____________________________________]
((in[19 + inPos] & 144115188075855871L) >>> 37)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [____21098765_____________________________________________]
((in[19 + inPos] & 144115188075855871L) >>> 45)) & 255);
out[142 + outPos] = (byte)((
// [____3210]
// [6543_____________________________________________________]
((in[19 + inPos] & 144115188075855871L) >>> 53)
| // [7654____]
// [_____________________________________________________3210]
((in[20 + inPos] & 144115188075855871L) << 4)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_____________________________________________10987654____]
((in[20 + inPos] & 144115188075855871L) >>> 4)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432____________]
((in[20 + inPos] & 144115188075855871L) >>> 12)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210____________________]
((in[20 + inPos] & 144115188075855871L) >>> 20)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [_____________________54321098____________________________]
((in[20 + inPos] & 144115188075855871L) >>> 28)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_____________32109876____________________________________]
((in[20 + inPos] & 144115188075855871L) >>> 36)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_____10987654____________________________________________]
((in[20 + inPos] & 144115188075855871L) >>> 44)) & 255);
out[149 + outPos] = (byte)((
// [___43210]
// [65432____________________________________________________]
((in[20 + inPos] & 144115188075855871L) >>> 52)
| // [765_____]
// [______________________________________________________210]
((in[21 + inPos] & 144115188075855871L) << 5)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [______________________________________________09876543___]
((in[21 + inPos] & 144115188075855871L) >>> 3)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321___________]
((in[21 + inPos] & 144115188075855871L) >>> 11)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [______________________________65432109___________________]
((in[21 + inPos] & 144115188075855871L) >>> 19)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [______________________43210987___________________________]
((in[21 + inPos] & 144115188075855871L) >>> 27)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [______________21098765___________________________________]
((in[21 + inPos] & 144115188075855871L) >>> 35)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [______09876543___________________________________________]
((in[21 + inPos] & 144115188075855871L) >>> 43)) & 255);
out[156 + outPos] = (byte)((
// [__543210]
// [654321___________________________________________________]
((in[21 + inPos] & 144115188075855871L) >>> 51)
| // [76______]
// [_______________________________________________________10]
((in[22 + inPos] & 144115188075855871L) << 6)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [_______________________________________________98765432__]
((in[22 + inPos] & 144115188075855871L) >>> 2)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210__________]
((in[22 + inPos] & 144115188075855871L) >>> 10)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098__________________]
((in[22 + inPos] & 144115188075855871L) >>> 18)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [_______________________32109876__________________________]
((in[22 + inPos] & 144115188075855871L) >>> 26)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [_______________10987654__________________________________]
((in[22 + inPos] & 144115188075855871L) >>> 34)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [_______98765432__________________________________________]
((in[22 + inPos] & 144115188075855871L) >>> 42)) & 255);
out[163 + outPos] = (byte)((
// [_6543210]
// [6543210__________________________________________________]
((in[22 + inPos] & 144115188075855871L) >>> 50)
| // [7_______]
// [________________________________________________________0]
((in[23 + inPos] & 144115188075855871L) << 7)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________________________________87654321_]
((in[23 + inPos] & 144115188075855871L) >>> 1)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________________________________65432109_________]
((in[23 + inPos] & 144115188075855871L) >>> 9)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_________________]
((in[23 + inPos] & 144115188075855871L) >>> 17)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [________________________21098765_________________________]
((in[23 + inPos] & 144115188075855871L) >>> 25)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________09876543_________________________________]
((in[23 + inPos] & 144115188075855871L) >>> 33)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________87654321_________________________________________]
((in[23 + inPos] & 144115188075855871L) >>> 41)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [65432109_________________________________________________]
((in[23 + inPos] & 144115188075855871L) >>> 49)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [_________________________________________________76543210]
((in[24 + inPos] & 144115188075855871L))) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [_________________________________________54321098________]
((in[24 + inPos] & 144115188075855871L) >>> 8)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [_________________________________32109876________________]
((in[24 + inPos] & 144115188075855871L) >>> 16)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [_________________________10987654________________________]
((in[24 + inPos] & 144115188075855871L) >>> 24)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [_________________98765432________________________________]
((in[24 + inPos] & 144115188075855871L) >>> 32)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [_________76543210________________________________________]
((in[24 + inPos] & 144115188075855871L) >>> 40)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [_54321098________________________________________________]
((in[24 + inPos] & 144115188075855871L) >>> 48)) & 255);
out[178 + outPos] = (byte)((
// [_______0]
// [6________________________________________________________]
((in[24 + inPos] & 144115188075855871L) >>> 56)
| // [7654321_]
// [__________________________________________________6543210]
((in[25 + inPos] & 144115188075855871L) << 1)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [__________________________________________43210987_______]
((in[25 + inPos] & 144115188075855871L) >>> 7)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [__________________________________21098765_______________]
((in[25 + inPos] & 144115188075855871L) >>> 15)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [__________________________09876543_______________________]
((in[25 + inPos] & 144115188075855871L) >>> 23)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [__________________87654321_______________________________]
((in[25 + inPos] & 144115188075855871L) >>> 31)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [__________65432109_______________________________________]
((in[25 + inPos] & 144115188075855871L) >>> 39)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [__43210987_______________________________________________]
((in[25 + inPos] & 144115188075855871L) >>> 47)) & 255);
out[185 + outPos] = (byte)((
// [______10]
// [65_______________________________________________________]
((in[25 + inPos] & 144115188075855871L) >>> 55)
| // [765432__]
// [___________________________________________________543210]
((in[26 + inPos] & 144115188075855871L) << 2)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [___________________________________________32109876______]
((in[26 + inPos] & 144115188075855871L) >>> 6)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [___________________________________10987654______________]
((in[26 + inPos] & 144115188075855871L) >>> 14)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [___________________________98765432______________________]
((in[26 + inPos] & 144115188075855871L) >>> 22)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [___________________76543210______________________________]
((in[26 + inPos] & 144115188075855871L) >>> 30)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [___________54321098______________________________________]
((in[26 + inPos] & 144115188075855871L) >>> 38)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [___32109876______________________________________________]
((in[26 + inPos] & 144115188075855871L) >>> 46)) & 255);
out[192 + outPos] = (byte)((
// [_____210]
// [654______________________________________________________]
((in[26 + inPos] & 144115188075855871L) >>> 54)
| // [76543___]
// [____________________________________________________43210]
((in[27 + inPos] & 144115188075855871L) << 3)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [____________________________________________21098765_____]
((in[27 + inPos] & 144115188075855871L) >>> 5)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [____________________________________09876543_____________]
((in[27 + inPos] & 144115188075855871L) >>> 13)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [____________________________87654321_____________________]
((in[27 + inPos] & 144115188075855871L) >>> 21)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [____________________65432109_____________________________]
((in[27 + inPos] & 144115188075855871L) >>> 29)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [____________43210987_____________________________________]
((in[27 + inPos] & 144115188075855871L) >>> 37)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [____21098765_____________________________________________]
((in[27 + inPos] & 144115188075855871L) >>> 45)) & 255);
out[199 + outPos] = (byte)((
// [____3210]
// [6543_____________________________________________________]
((in[27 + inPos] & 144115188075855871L) >>> 53)
| // [7654____]
// [_____________________________________________________3210]
((in[28 + inPos] & 144115188075855871L) << 4)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [_____________________________________________10987654____]
((in[28 + inPos] & 144115188075855871L) >>> 4)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [_____________________________________98765432____________]
((in[28 + inPos] & 144115188075855871L) >>> 12)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [_____________________________76543210____________________]
((in[28 + inPos] & 144115188075855871L) >>> 20)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [_____________________54321098____________________________]
((in[28 + inPos] & 144115188075855871L) >>> 28)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [_____________32109876____________________________________]
((in[28 + inPos] & 144115188075855871L) >>> 36)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [_____10987654____________________________________________]
((in[28 + inPos] & 144115188075855871L) >>> 44)) & 255);
out[206 + outPos] = (byte)((
// [___43210]
// [65432____________________________________________________]
((in[28 + inPos] & 144115188075855871L) >>> 52)
| // [765_____]
// [______________________________________________________210]
((in[29 + inPos] & 144115188075855871L) << 5)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [______________________________________________09876543___]
((in[29 + inPos] & 144115188075855871L) >>> 3)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [______________________________________87654321___________]
((in[29 + inPos] & 144115188075855871L) >>> 11)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [______________________________65432109___________________]
((in[29 + inPos] & 144115188075855871L) >>> 19)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [______________________43210987___________________________]
((in[29 + inPos] & 144115188075855871L) >>> 27)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [______________21098765___________________________________]
((in[29 + inPos] & 144115188075855871L) >>> 35)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [______09876543___________________________________________]
((in[29 + inPos] & 144115188075855871L) >>> 43)) & 255);
out[213 + outPos] = (byte)((
// [__543210]
// [654321___________________________________________________]
((in[29 + inPos] & 144115188075855871L) >>> 51)
| // [76______]
// [_______________________________________________________10]
((in[30 + inPos] & 144115188075855871L) << 6)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [_______________________________________________98765432__]
((in[30 + inPos] & 144115188075855871L) >>> 2)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [_______________________________________76543210__________]
((in[30 + inPos] & 144115188075855871L) >>> 10)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [_______________________________54321098__________________]
((in[30 + inPos] & 144115188075855871L) >>> 18)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [_______________________32109876__________________________]
((in[30 + inPos] & 144115188075855871L) >>> 26)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [_______________10987654__________________________________]
((in[30 + inPos] & 144115188075855871L) >>> 34)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [_______98765432__________________________________________]
((in[30 + inPos] & 144115188075855871L) >>> 42)) & 255);
out[220 + outPos] = (byte)((
// [_6543210]
// [6543210__________________________________________________]
((in[30 + inPos] & 144115188075855871L) >>> 50)
| // [7_______]
// [________________________________________________________0]
((in[31 + inPos] & 144115188075855871L) << 7)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [________________________________________________87654321_]
((in[31 + inPos] & 144115188075855871L) >>> 1)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [________________________________________65432109_________]
((in[31 + inPos] & 144115188075855871L) >>> 9)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [________________________________43210987_________________]
((in[31 + inPos] & 144115188075855871L) >>> 17)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [________________________21098765_________________________]
((in[31 + inPos] & 144115188075855871L) >>> 25)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [________________09876543_________________________________]
((in[31 + inPos] & 144115188075855871L) >>> 33)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [________87654321_________________________________________]
((in[31 + inPos] & 144115188075855871L) >>> 41)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [65432109_________________________________________________]
((in[31 + inPos] & 144115188075855871L) >>> 49)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 144115188075855871L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in[ 7 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in[ 8 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in[ 9 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in[10 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in[11 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in[12 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in[13 + inPos]) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in[14 + inPos]) << 55) & 144115188075855871L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in[16 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in[17 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in[18 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in[19 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in[20 + inPos]) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in[21 + inPos]) << 54) & 144115188075855871L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in[21 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in[22 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in[23 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in[24 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in[25 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in[26 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in[27 + inPos]) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in[28 + inPos]) << 53) & 144115188075855871L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in[29 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in[30 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in[31 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in[32 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in[33 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in[34 + inPos]) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in[35 + inPos]) << 52) & 144115188075855871L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in[35 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in[36 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in[37 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in[38 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in[39 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in[40 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in[41 + inPos]) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in[42 + inPos]) << 51) & 144115188075855871L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in[42 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in[43 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in[44 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in[45 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in[46 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in[47 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in[48 + inPos]) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in[49 + inPos]) << 50) & 144115188075855871L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in[49 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in[50 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in[51 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in[52 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in[53 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in[54 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in[55 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in[56 + inPos]) << 49) & 144115188075855871L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 144115188075855871L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in.get( 7 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in.get( 8 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in.get( 9 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in.get(10 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in.get(11 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in.get(12 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in.get(13 + inPos)) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in.get(14 + inPos)) << 55) & 144115188075855871L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in.get(16 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in.get(17 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in.get(18 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in.get(19 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in.get(20 + inPos)) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in.get(21 + inPos)) << 54) & 144115188075855871L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in.get(21 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in.get(22 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in.get(23 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in.get(24 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in.get(25 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in.get(26 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in.get(27 + inPos)) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in.get(28 + inPos)) << 53) & 144115188075855871L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in.get(30 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in.get(31 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in.get(32 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in.get(33 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in.get(34 + inPos)) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in.get(35 + inPos)) << 52) & 144115188075855871L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in.get(35 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in.get(36 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in.get(37 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in.get(38 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in.get(39 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in.get(40 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in.get(41 + inPos)) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in.get(42 + inPos)) << 51) & 144115188075855871L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in.get(42 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in.get(43 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in.get(44 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in.get(45 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in.get(46 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in.get(47 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in.get(48 + inPos)) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in.get(49 + inPos)) << 50) & 144115188075855871L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in.get(49 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in.get(50 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in.get(51 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in.get(52 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in.get(53 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in.get(54 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in.get(55 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in.get(56 + inPos)) << 49) & 144115188075855871L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 144115188075855871L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in[ 7 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in[ 8 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in[ 9 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in[10 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in[11 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in[12 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in[13 + inPos]) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in[14 + inPos]) << 55) & 144115188075855871L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in[14 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in[15 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in[16 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in[17 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in[18 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in[19 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in[20 + inPos]) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in[21 + inPos]) << 54) & 144115188075855871L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in[21 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in[22 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in[23 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in[24 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in[25 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in[26 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in[27 + inPos]) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in[28 + inPos]) << 53) & 144115188075855871L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in[28 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in[29 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in[30 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in[31 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in[32 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in[33 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in[34 + inPos]) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in[35 + inPos]) << 52) & 144115188075855871L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in[35 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in[36 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in[37 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in[38 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in[39 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in[40 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in[41 + inPos]) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in[42 + inPos]) << 51) & 144115188075855871L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in[42 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in[43 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in[44 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in[45 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in[46 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in[47 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in[48 + inPos]) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in[49 + inPos]) << 50) & 144115188075855871L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in[49 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in[50 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in[51 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in[52 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in[53 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in[54 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in[55 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in[56 + inPos]) << 49) & 144115188075855871L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in[57 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in[58 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in[59 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in[60 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in[61 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in[62 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in[63 + inPos]) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in[64 + inPos]) << 56) & 144115188075855871L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in[64 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in[65 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in[66 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in[67 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in[68 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in[69 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in[70 + inPos]) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in[71 + inPos]) << 55) & 144115188075855871L);
out[10 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in[71 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in[72 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in[73 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in[74 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in[75 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in[76 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in[77 + inPos]) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in[78 + inPos]) << 54) & 144115188075855871L);
out[11 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in[78 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in[79 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in[80 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in[81 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in[82 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in[83 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in[84 + inPos]) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in[85 + inPos]) << 53) & 144115188075855871L);
out[12 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in[85 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in[86 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in[87 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in[88 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in[89 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in[90 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in[91 + inPos]) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in[92 + inPos]) << 52) & 144115188075855871L);
out[13 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in[92 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in[93 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in[94 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in[95 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in[96 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in[97 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in[98 + inPos]) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in[99 + inPos]) << 51) & 144115188075855871L);
out[14 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in[99 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in[100 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in[101 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in[102 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in[103 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in[104 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in[105 + inPos]) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in[106 + inPos]) << 50) & 144115188075855871L);
out[15 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in[106 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in[107 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in[108 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in[109 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in[110 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in[111 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in[112 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in[113 + inPos]) << 49) & 144115188075855871L);
out[16 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in[114 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in[115 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in[116 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in[117 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in[118 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in[119 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in[120 + inPos]) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in[121 + inPos]) << 56) & 144115188075855871L);
out[17 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in[121 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in[122 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in[123 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in[124 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in[125 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in[126 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in[127 + inPos]) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in[128 + inPos]) << 55) & 144115188075855871L);
out[18 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in[128 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in[129 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in[130 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in[131 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in[132 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in[133 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in[134 + inPos]) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in[135 + inPos]) << 54) & 144115188075855871L);
out[19 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in[135 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in[136 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in[137 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in[138 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in[139 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in[140 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in[141 + inPos]) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in[142 + inPos]) << 53) & 144115188075855871L);
out[20 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in[142 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in[143 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in[144 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in[145 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in[146 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in[147 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in[148 + inPos]) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in[149 + inPos]) << 52) & 144115188075855871L);
out[21 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in[149 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in[150 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in[151 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in[152 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in[153 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in[154 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in[155 + inPos]) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in[156 + inPos]) << 51) & 144115188075855871L);
out[22 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in[156 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in[157 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in[158 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in[159 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in[160 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in[161 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in[162 + inPos]) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in[163 + inPos]) << 50) & 144115188075855871L);
out[23 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in[163 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in[164 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in[165 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in[166 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in[167 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in[168 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in[169 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in[170 + inPos]) << 49) & 144115188075855871L);
out[24 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in[171 + inPos]) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in[172 + inPos]) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in[173 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in[174 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in[175 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in[176 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in[177 + inPos]) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in[178 + inPos]) << 56) & 144115188075855871L);
out[25 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in[178 + inPos]) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in[179 + inPos]) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in[180 + inPos]) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in[181 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in[182 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in[183 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in[184 + inPos]) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in[185 + inPos]) << 55) & 144115188075855871L);
out[26 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in[185 + inPos]) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in[186 + inPos]) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in[187 + inPos]) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in[188 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in[189 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in[190 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in[191 + inPos]) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in[192 + inPos]) << 54) & 144115188075855871L);
out[27 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in[192 + inPos]) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in[193 + inPos]) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in[194 + inPos]) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in[195 + inPos]) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in[196 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in[197 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in[198 + inPos]) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in[199 + inPos]) << 53) & 144115188075855871L);
out[28 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in[199 + inPos]) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in[200 + inPos]) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in[201 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in[202 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in[203 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in[204 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in[205 + inPos]) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in[206 + inPos]) << 52) & 144115188075855871L);
out[29 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in[206 + inPos]) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in[207 + inPos]) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in[208 + inPos]) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in[209 + inPos]) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in[210 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in[211 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in[212 + inPos]) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in[213 + inPos]) << 51) & 144115188075855871L);
out[30 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in[213 + inPos]) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in[214 + inPos]) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in[215 + inPos]) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in[216 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in[217 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in[218 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in[219 + inPos]) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in[220 + inPos]) << 50) & 144115188075855871L);
out[31 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in[220 + inPos]) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in[221 + inPos]) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in[222 + inPos]) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in[223 + inPos]) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in[224 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in[225 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in[226 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in[227 + inPos]) << 49) & 144115188075855871L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 144115188075855871L);
out[ 1 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in.get( 7 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in.get( 8 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in.get( 9 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in.get(10 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in.get(11 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in.get(12 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in.get(13 + inPos)) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in.get(14 + inPos)) << 55) & 144115188075855871L);
out[ 2 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in.get(14 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in.get(15 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in.get(16 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in.get(17 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in.get(18 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in.get(19 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in.get(20 + inPos)) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in.get(21 + inPos)) << 54) & 144115188075855871L);
out[ 3 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in.get(21 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in.get(22 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in.get(23 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in.get(24 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in.get(25 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in.get(26 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in.get(27 + inPos)) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in.get(28 + inPos)) << 53) & 144115188075855871L);
out[ 4 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in.get(28 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in.get(29 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in.get(30 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in.get(31 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in.get(32 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in.get(33 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in.get(34 + inPos)) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in.get(35 + inPos)) << 52) & 144115188075855871L);
out[ 5 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in.get(35 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in.get(36 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in.get(37 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in.get(38 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in.get(39 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in.get(40 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in.get(41 + inPos)) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in.get(42 + inPos)) << 51) & 144115188075855871L);
out[ 6 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in.get(42 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in.get(43 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in.get(44 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in.get(45 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in.get(46 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in.get(47 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in.get(48 + inPos)) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in.get(49 + inPos)) << 50) & 144115188075855871L);
out[ 7 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in.get(49 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in.get(50 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in.get(51 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in.get(52 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in.get(53 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in.get(54 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in.get(55 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in.get(56 + inPos)) << 49) & 144115188075855871L);
out[ 8 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in.get(57 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in.get(58 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in.get(59 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in.get(60 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in.get(61 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in.get(62 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in.get(63 + inPos)) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in.get(64 + inPos)) << 56) & 144115188075855871L);
out[ 9 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in.get(64 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in.get(65 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in.get(66 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in.get(67 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in.get(68 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in.get(69 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in.get(70 + inPos)) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in.get(71 + inPos)) << 55) & 144115188075855871L);
out[10 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in.get(71 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in.get(72 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in.get(73 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in.get(74 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in.get(75 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in.get(76 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in.get(77 + inPos)) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in.get(78 + inPos)) << 54) & 144115188075855871L);
out[11 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in.get(78 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in.get(79 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in.get(80 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in.get(81 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in.get(82 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in.get(83 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in.get(84 + inPos)) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in.get(85 + inPos)) << 53) & 144115188075855871L);
out[12 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in.get(85 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in.get(86 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in.get(87 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in.get(88 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in.get(89 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in.get(90 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in.get(91 + inPos)) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in.get(92 + inPos)) << 52) & 144115188075855871L);
out[13 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in.get(92 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in.get(93 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in.get(94 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in.get(95 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in.get(96 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in.get(97 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in.get(98 + inPos)) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in.get(99 + inPos)) << 51) & 144115188075855871L);
out[14 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in.get(99 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in.get(100 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in.get(101 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in.get(102 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in.get(103 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in.get(104 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in.get(105 + inPos)) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in.get(106 + inPos)) << 50) & 144115188075855871L);
out[15 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in.get(106 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in.get(107 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in.get(108 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in.get(109 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in.get(110 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in.get(111 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in.get(112 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in.get(113 + inPos)) << 49) & 144115188075855871L);
out[16 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in.get(114 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in.get(115 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in.get(116 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in.get(117 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in.get(118 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in.get(119 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in.get(120 + inPos)) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in.get(121 + inPos)) << 56) & 144115188075855871L);
out[17 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in.get(121 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in.get(122 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in.get(123 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in.get(124 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in.get(125 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in.get(126 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in.get(127 + inPos)) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in.get(128 + inPos)) << 55) & 144115188075855871L);
out[18 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in.get(128 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in.get(129 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in.get(130 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in.get(131 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in.get(132 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in.get(133 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in.get(134 + inPos)) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in.get(135 + inPos)) << 54) & 144115188075855871L);
out[19 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in.get(135 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in.get(136 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in.get(137 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in.get(138 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in.get(139 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in.get(140 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in.get(141 + inPos)) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in.get(142 + inPos)) << 53) & 144115188075855871L);
out[20 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in.get(142 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in.get(143 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in.get(144 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in.get(145 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in.get(146 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in.get(147 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in.get(148 + inPos)) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in.get(149 + inPos)) << 52) & 144115188075855871L);
out[21 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in.get(149 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in.get(150 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in.get(151 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in.get(152 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in.get(153 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in.get(154 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in.get(155 + inPos)) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in.get(156 + inPos)) << 51) & 144115188075855871L);
out[22 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in.get(156 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in.get(157 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in.get(158 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in.get(159 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in.get(160 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in.get(161 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in.get(162 + inPos)) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in.get(163 + inPos)) << 50) & 144115188075855871L);
out[23 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in.get(163 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in.get(164 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in.get(165 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in.get(166 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in.get(167 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in.get(168 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in.get(169 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in.get(170 + inPos)) << 49) & 144115188075855871L);
out[24 + outPos] =
// [76543210]
// [_________________________________________________76543210]
((((long)in.get(171 + inPos)) ) & 255L)
| // [76543210]
// [_________________________________________54321098________]
((((long)in.get(172 + inPos)) << 8) & 65535L)
| // [76543210]
// [_________________________________32109876________________]
((((long)in.get(173 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_________________________10987654________________________]
((((long)in.get(174 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_________________98765432________________________________]
((((long)in.get(175 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_________76543210________________________________________]
((((long)in.get(176 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_54321098________________________________________________]
((((long)in.get(177 + inPos)) << 48) & 72057594037927935L)
| // [_______0]
// [6________________________________________________________]
((((long)in.get(178 + inPos)) << 56) & 144115188075855871L);
out[25 + outPos] =
// [7654321_]
// [__________________________________________________6543210]
((((long)in.get(178 + inPos)) >> 1) & 127L)
| // [76543210]
// [__________________________________________43210987_______]
((((long)in.get(179 + inPos)) << 7) & 32767L)
| // [76543210]
// [__________________________________21098765_______________]
((((long)in.get(180 + inPos)) << 15) & 8388607L)
| // [76543210]
// [__________________________09876543_______________________]
((((long)in.get(181 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [__________________87654321_______________________________]
((((long)in.get(182 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [__________65432109_______________________________________]
((((long)in.get(183 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [__43210987_______________________________________________]
((((long)in.get(184 + inPos)) << 47) & 36028797018963967L)
| // [______10]
// [65_______________________________________________________]
((((long)in.get(185 + inPos)) << 55) & 144115188075855871L);
out[26 + outPos] =
// [765432__]
// [___________________________________________________543210]
((((long)in.get(185 + inPos)) >> 2) & 63L)
| // [76543210]
// [___________________________________________32109876______]
((((long)in.get(186 + inPos)) << 6) & 16383L)
| // [76543210]
// [___________________________________10987654______________]
((((long)in.get(187 + inPos)) << 14) & 4194303L)
| // [76543210]
// [___________________________98765432______________________]
((((long)in.get(188 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [___________________76543210______________________________]
((((long)in.get(189 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [___________54321098______________________________________]
((((long)in.get(190 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [___32109876______________________________________________]
((((long)in.get(191 + inPos)) << 46) & 18014398509481983L)
| // [_____210]
// [654______________________________________________________]
((((long)in.get(192 + inPos)) << 54) & 144115188075855871L);
out[27 + outPos] =
// [76543___]
// [____________________________________________________43210]
((((long)in.get(192 + inPos)) >> 3) & 31L)
| // [76543210]
// [____________________________________________21098765_____]
((((long)in.get(193 + inPos)) << 5) & 8191L)
| // [76543210]
// [____________________________________09876543_____________]
((((long)in.get(194 + inPos)) << 13) & 2097151L)
| // [76543210]
// [____________________________87654321_____________________]
((((long)in.get(195 + inPos)) << 21) & 536870911L)
| // [76543210]
// [____________________65432109_____________________________]
((((long)in.get(196 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [____________43210987_____________________________________]
((((long)in.get(197 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [____21098765_____________________________________________]
((((long)in.get(198 + inPos)) << 45) & 9007199254740991L)
| // [____3210]
// [6543_____________________________________________________]
((((long)in.get(199 + inPos)) << 53) & 144115188075855871L);
out[28 + outPos] =
// [7654____]
// [_____________________________________________________3210]
((((long)in.get(199 + inPos)) >> 4) & 15L)
| // [76543210]
// [_____________________________________________10987654____]
((((long)in.get(200 + inPos)) << 4) & 4095L)
| // [76543210]
// [_____________________________________98765432____________]
((((long)in.get(201 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_____________________________76543210____________________]
((((long)in.get(202 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_____________________54321098____________________________]
((((long)in.get(203 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_____________32109876____________________________________]
((((long)in.get(204 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_____10987654____________________________________________]
((((long)in.get(205 + inPos)) << 44) & 4503599627370495L)
| // [___43210]
// [65432____________________________________________________]
((((long)in.get(206 + inPos)) << 52) & 144115188075855871L);
out[29 + outPos] =
// [765_____]
// [______________________________________________________210]
((((long)in.get(206 + inPos)) >> 5) & 7L)
| // [76543210]
// [______________________________________________09876543___]
((((long)in.get(207 + inPos)) << 3) & 2047L)
| // [76543210]
// [______________________________________87654321___________]
((((long)in.get(208 + inPos)) << 11) & 524287L)
| // [76543210]
// [______________________________65432109___________________]
((((long)in.get(209 + inPos)) << 19) & 134217727L)
| // [76543210]
// [______________________43210987___________________________]
((((long)in.get(210 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [______________21098765___________________________________]
((((long)in.get(211 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [______09876543___________________________________________]
((((long)in.get(212 + inPos)) << 43) & 2251799813685247L)
| // [__543210]
// [654321___________________________________________________]
((((long)in.get(213 + inPos)) << 51) & 144115188075855871L);
out[30 + outPos] =
// [76______]
// [_______________________________________________________10]
((((long)in.get(213 + inPos)) >> 6) & 3L)
| // [76543210]
// [_______________________________________________98765432__]
((((long)in.get(214 + inPos)) << 2) & 1023L)
| // [76543210]
// [_______________________________________76543210__________]
((((long)in.get(215 + inPos)) << 10) & 262143L)
| // [76543210]
// [_______________________________54321098__________________]
((((long)in.get(216 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_______________________32109876__________________________]
((((long)in.get(217 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_______________10987654__________________________________]
((((long)in.get(218 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_______98765432__________________________________________]
((((long)in.get(219 + inPos)) << 42) & 1125899906842623L)
| // [_6543210]
// [6543210__________________________________________________]
((((long)in.get(220 + inPos)) << 50) & 144115188075855871L);
out[31 + outPos] =
// [7_______]
// [________________________________________________________0]
((((long)in.get(220 + inPos)) >> 7) & 1L)
| // [76543210]
// [________________________________________________87654321_]
((((long)in.get(221 + inPos)) << 1) & 511L)
| // [76543210]
// [________________________________________65432109_________]
((((long)in.get(222 + inPos)) << 9) & 131071L)
| // [76543210]
// [________________________________43210987_________________]
((((long)in.get(223 + inPos)) << 17) & 33554431L)
| // [76543210]
// [________________________21098765_________________________]
((((long)in.get(224 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [________________09876543_________________________________]
((((long)in.get(225 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [________87654321_________________________________________]
((((long)in.get(226 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [65432109_________________________________________________]
((((long)in.get(227 + inPos)) << 49) & 144115188075855871L);
}
}
private static final class Packer58 extends BytePackerForLong {
private Packer58() {
super(58);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[ 0 + inPos] & 288230376151711743L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[ 0 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[ 1 + inPos] & 288230376151711743L) << 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[ 1 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[ 1 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[14 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[ 2 + inPos] & 288230376151711743L) << 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[ 2 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[ 2 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[21 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[ 3 + inPos] & 288230376151711743L) << 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[ 3 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[ 3 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[ 4 + inPos] & 288230376151711743L))) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[ 4 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[36 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[ 5 + inPos] & 288230376151711743L) << 2)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[ 5 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[ 5 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[43 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[ 6 + inPos] & 288230376151711743L) << 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[ 6 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[ 6 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[50 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[ 7 + inPos] & 288230376151711743L) << 6)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[ 7 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[ 7 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 50)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[ 0 + inPos] & 288230376151711743L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[ 0 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[ 0 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[ 1 + inPos] & 288230376151711743L) << 2)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[ 1 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[ 1 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[14 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[ 1 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[ 2 + inPos] & 288230376151711743L) << 4)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[ 2 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[ 2 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[21 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[ 2 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[ 3 + inPos] & 288230376151711743L) << 6)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[ 3 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[ 3 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[ 3 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[ 4 + inPos] & 288230376151711743L))) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[ 4 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[36 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[ 4 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[ 5 + inPos] & 288230376151711743L) << 2)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[ 5 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[ 5 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[43 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[ 5 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[ 6 + inPos] & 288230376151711743L) << 4)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[ 6 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[ 6 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[50 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[ 6 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[ 7 + inPos] & 288230376151711743L) << 6)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[ 7 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[ 7 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[ 7 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[ 8 + inPos] & 288230376151711743L))) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[ 8 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[65 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[ 8 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[ 9 + inPos] & 288230376151711743L) << 2)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[ 9 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[ 9 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[ 9 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[ 9 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[ 9 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[ 9 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[72 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[ 9 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[10 + inPos] & 288230376151711743L) << 4)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[10 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[10 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[10 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[10 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[10 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[10 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[79 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[10 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[11 + inPos] & 288230376151711743L) << 6)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[11 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[11 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[11 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[11 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[11 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[11 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[11 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[12 + inPos] & 288230376151711743L))) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[12 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[12 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[12 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[12 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[12 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[12 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[94 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[12 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[13 + inPos] & 288230376151711743L) << 2)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[13 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[13 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[13 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[13 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[13 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[13 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[101 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[13 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[14 + inPos] & 288230376151711743L) << 4)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[14 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[14 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[14 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[14 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[14 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[14 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[108 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[14 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[15 + inPos] & 288230376151711743L) << 6)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[15 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[15 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[15 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[15 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[15 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[15 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[15 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[16 + inPos] & 288230376151711743L))) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[16 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[16 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[16 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[16 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[16 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[16 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[123 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[16 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[17 + inPos] & 288230376151711743L) << 2)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[17 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[17 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[17 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[17 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[17 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[17 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[130 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[17 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[18 + inPos] & 288230376151711743L) << 4)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[18 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[18 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[18 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[18 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[18 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[18 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[137 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[18 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[19 + inPos] & 288230376151711743L) << 6)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[19 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[19 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[19 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[19 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[19 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[19 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[19 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[20 + inPos] & 288230376151711743L))) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[20 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[20 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[20 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[20 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[20 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[20 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[152 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[20 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[21 + inPos] & 288230376151711743L) << 2)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[21 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[21 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[21 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[21 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[21 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[21 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[159 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[21 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[22 + inPos] & 288230376151711743L) << 4)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[22 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[22 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[22 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[22 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[22 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[22 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[166 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[22 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[23 + inPos] & 288230376151711743L) << 6)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[23 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[23 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[23 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[23 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[23 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[23 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[23 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[24 + inPos] & 288230376151711743L))) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[24 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[24 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[24 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[24 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[24 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[24 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[181 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[24 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[25 + inPos] & 288230376151711743L) << 2)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[25 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[25 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[25 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[25 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[25 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[25 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[188 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[25 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[26 + inPos] & 288230376151711743L) << 4)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[26 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[26 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[26 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[26 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[26 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[26 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[195 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[26 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[27 + inPos] & 288230376151711743L) << 6)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[27 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[27 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[27 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[27 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[27 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[27 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[27 + inPos] & 288230376151711743L) >>> 50)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [__________________________________________________76543210]
((in[28 + inPos] & 288230376151711743L))) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [__________________________________________54321098________]
((in[28 + inPos] & 288230376151711743L) >>> 8)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [__________________________________32109876________________]
((in[28 + inPos] & 288230376151711743L) >>> 16)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [__________________________10987654________________________]
((in[28 + inPos] & 288230376151711743L) >>> 24)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [__________________98765432________________________________]
((in[28 + inPos] & 288230376151711743L) >>> 32)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [__________76543210________________________________________]
((in[28 + inPos] & 288230376151711743L) >>> 40)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [__54321098________________________________________________]
((in[28 + inPos] & 288230376151711743L) >>> 48)) & 255);
out[210 + outPos] = (byte)((
// [______10]
// [76________________________________________________________]
((in[28 + inPos] & 288230376151711743L) >>> 56)
| // [765432__]
// [____________________________________________________543210]
((in[29 + inPos] & 288230376151711743L) << 2)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [____________________________________________32109876______]
((in[29 + inPos] & 288230376151711743L) >>> 6)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [____________________________________10987654______________]
((in[29 + inPos] & 288230376151711743L) >>> 14)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [____________________________98765432______________________]
((in[29 + inPos] & 288230376151711743L) >>> 22)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [____________________76543210______________________________]
((in[29 + inPos] & 288230376151711743L) >>> 30)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [____________54321098______________________________________]
((in[29 + inPos] & 288230376151711743L) >>> 38)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [____32109876______________________________________________]
((in[29 + inPos] & 288230376151711743L) >>> 46)) & 255);
out[217 + outPos] = (byte)((
// [____3210]
// [7654______________________________________________________]
((in[29 + inPos] & 288230376151711743L) >>> 54)
| // [7654____]
// [______________________________________________________3210]
((in[30 + inPos] & 288230376151711743L) << 4)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [______________________________________________10987654____]
((in[30 + inPos] & 288230376151711743L) >>> 4)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [______________________________________98765432____________]
((in[30 + inPos] & 288230376151711743L) >>> 12)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [______________________________76543210____________________]
((in[30 + inPos] & 288230376151711743L) >>> 20)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [______________________54321098____________________________]
((in[30 + inPos] & 288230376151711743L) >>> 28)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [______________32109876____________________________________]
((in[30 + inPos] & 288230376151711743L) >>> 36)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [______10987654____________________________________________]
((in[30 + inPos] & 288230376151711743L) >>> 44)) & 255);
out[224 + outPos] = (byte)((
// [__543210]
// [765432____________________________________________________]
((in[30 + inPos] & 288230376151711743L) >>> 52)
| // [76______]
// [________________________________________________________10]
((in[31 + inPos] & 288230376151711743L) << 6)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [________________________________________________98765432__]
((in[31 + inPos] & 288230376151711743L) >>> 2)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [________________________________________76543210__________]
((in[31 + inPos] & 288230376151711743L) >>> 10)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [________________________________54321098__________________]
((in[31 + inPos] & 288230376151711743L) >>> 18)) & 255);
out[228 + outPos] = (byte)((
// [76543210]
// [________________________32109876__________________________]
((in[31 + inPos] & 288230376151711743L) >>> 26)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [________________10987654__________________________________]
((in[31 + inPos] & 288230376151711743L) >>> 34)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [________98765432__________________________________________]
((in[31 + inPos] & 288230376151711743L) >>> 42)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [76543210__________________________________________________]
((in[31 + inPos] & 288230376151711743L) >>> 50)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 288230376151711743L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[ 7 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[ 8 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[ 9 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[10 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[11 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[12 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[13 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[14 + inPos]) << 54) & 288230376151711743L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[14 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[15 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[16 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[17 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[18 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[19 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[20 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[21 + inPos]) << 52) & 288230376151711743L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[21 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[22 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[23 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[24 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[25 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[26 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[27 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[28 + inPos]) << 50) & 288230376151711743L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[29 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[30 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[31 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[32 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[33 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[34 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[35 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[36 + inPos]) << 56) & 288230376151711743L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[36 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[37 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[38 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[39 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[40 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[41 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[42 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[43 + inPos]) << 54) & 288230376151711743L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[43 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[44 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[45 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[46 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[47 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[48 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[49 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[50 + inPos]) << 52) & 288230376151711743L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[50 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[51 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[52 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[53 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[54 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[55 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[56 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[57 + inPos]) << 50) & 288230376151711743L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 288230376151711743L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get( 7 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get( 8 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get( 9 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(10 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(11 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(12 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(13 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(14 + inPos)) << 54) & 288230376151711743L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(14 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(15 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(16 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(17 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(18 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(19 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(20 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(21 + inPos)) << 52) & 288230376151711743L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(21 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(22 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(23 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(24 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(25 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(26 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(27 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(28 + inPos)) << 50) & 288230376151711743L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(29 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(30 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(31 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(32 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(33 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(34 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(35 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(36 + inPos)) << 56) & 288230376151711743L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(36 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(37 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(38 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(39 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(40 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(41 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(42 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(43 + inPos)) << 54) & 288230376151711743L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(43 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(44 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(45 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(46 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(47 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(48 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(49 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(50 + inPos)) << 52) & 288230376151711743L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(50 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(51 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(52 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(53 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(54 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(55 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(56 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(57 + inPos)) << 50) & 288230376151711743L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 288230376151711743L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[ 7 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[ 8 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[ 9 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[10 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[11 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[12 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[13 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[14 + inPos]) << 54) & 288230376151711743L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[14 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[15 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[16 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[17 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[18 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[19 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[20 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[21 + inPos]) << 52) & 288230376151711743L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[21 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[22 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[23 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[24 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[25 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[26 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[27 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[28 + inPos]) << 50) & 288230376151711743L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[29 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[30 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[31 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[32 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[33 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[34 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[35 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[36 + inPos]) << 56) & 288230376151711743L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[36 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[37 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[38 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[39 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[40 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[41 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[42 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[43 + inPos]) << 54) & 288230376151711743L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[43 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[44 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[45 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[46 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[47 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[48 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[49 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[50 + inPos]) << 52) & 288230376151711743L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[50 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[51 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[52 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[53 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[54 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[55 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[56 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[57 + inPos]) << 50) & 288230376151711743L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[58 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[59 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[60 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[61 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[62 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[63 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[64 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[65 + inPos]) << 56) & 288230376151711743L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[65 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[66 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[67 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[68 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[69 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[70 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[71 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[72 + inPos]) << 54) & 288230376151711743L);
out[10 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[72 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[73 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[74 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[75 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[76 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[77 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[78 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[79 + inPos]) << 52) & 288230376151711743L);
out[11 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[79 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[80 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[81 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[82 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[83 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[84 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[85 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[86 + inPos]) << 50) & 288230376151711743L);
out[12 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[87 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[88 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[89 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[90 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[91 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[92 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[93 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[94 + inPos]) << 56) & 288230376151711743L);
out[13 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[94 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[95 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[96 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[97 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[98 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[99 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[100 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[101 + inPos]) << 54) & 288230376151711743L);
out[14 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[101 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[102 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[103 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[104 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[105 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[106 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[107 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[108 + inPos]) << 52) & 288230376151711743L);
out[15 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[108 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[109 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[110 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[111 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[112 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[113 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[114 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[115 + inPos]) << 50) & 288230376151711743L);
out[16 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[116 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[117 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[118 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[119 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[120 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[121 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[122 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[123 + inPos]) << 56) & 288230376151711743L);
out[17 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[123 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[124 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[125 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[126 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[127 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[128 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[129 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[130 + inPos]) << 54) & 288230376151711743L);
out[18 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[130 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[131 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[132 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[133 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[134 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[135 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[136 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[137 + inPos]) << 52) & 288230376151711743L);
out[19 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[137 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[138 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[139 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[140 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[141 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[142 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[143 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[144 + inPos]) << 50) & 288230376151711743L);
out[20 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[145 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[146 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[147 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[148 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[149 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[150 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[151 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[152 + inPos]) << 56) & 288230376151711743L);
out[21 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[152 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[153 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[154 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[155 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[156 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[157 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[158 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[159 + inPos]) << 54) & 288230376151711743L);
out[22 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[159 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[160 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[161 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[162 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[163 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[164 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[165 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[166 + inPos]) << 52) & 288230376151711743L);
out[23 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[166 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[167 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[168 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[169 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[170 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[171 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[172 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[173 + inPos]) << 50) & 288230376151711743L);
out[24 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[174 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[175 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[176 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[177 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[178 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[179 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[180 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[181 + inPos]) << 56) & 288230376151711743L);
out[25 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[181 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[182 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[183 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[184 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[185 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[186 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[187 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[188 + inPos]) << 54) & 288230376151711743L);
out[26 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[188 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[189 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[190 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[191 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[192 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[193 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[194 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[195 + inPos]) << 52) & 288230376151711743L);
out[27 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[195 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[196 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[197 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[198 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[199 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[200 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[201 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[202 + inPos]) << 50) & 288230376151711743L);
out[28 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in[203 + inPos]) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in[204 + inPos]) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in[205 + inPos]) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in[206 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in[207 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in[208 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in[209 + inPos]) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in[210 + inPos]) << 56) & 288230376151711743L);
out[29 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in[210 + inPos]) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in[211 + inPos]) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in[212 + inPos]) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in[213 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in[214 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in[215 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in[216 + inPos]) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in[217 + inPos]) << 54) & 288230376151711743L);
out[30 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in[217 + inPos]) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in[218 + inPos]) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in[219 + inPos]) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in[220 + inPos]) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in[221 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in[222 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in[223 + inPos]) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in[224 + inPos]) << 52) & 288230376151711743L);
out[31 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in[224 + inPos]) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in[225 + inPos]) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in[226 + inPos]) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in[227 + inPos]) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in[228 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in[229 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in[230 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in[231 + inPos]) << 50) & 288230376151711743L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 288230376151711743L);
out[ 1 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get( 7 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get( 8 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get( 9 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(10 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(11 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(12 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(13 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(14 + inPos)) << 54) & 288230376151711743L);
out[ 2 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(14 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(15 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(16 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(17 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(18 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(19 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(20 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(21 + inPos)) << 52) & 288230376151711743L);
out[ 3 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(21 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(22 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(23 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(24 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(25 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(26 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(27 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(28 + inPos)) << 50) & 288230376151711743L);
out[ 4 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(29 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(30 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(31 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(32 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(33 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(34 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(35 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(36 + inPos)) << 56) & 288230376151711743L);
out[ 5 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(36 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(37 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(38 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(39 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(40 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(41 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(42 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(43 + inPos)) << 54) & 288230376151711743L);
out[ 6 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(43 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(44 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(45 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(46 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(47 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(48 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(49 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(50 + inPos)) << 52) & 288230376151711743L);
out[ 7 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(50 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(51 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(52 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(53 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(54 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(55 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(56 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(57 + inPos)) << 50) & 288230376151711743L);
out[ 8 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(58 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(59 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(60 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(61 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(62 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(63 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(64 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(65 + inPos)) << 56) & 288230376151711743L);
out[ 9 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(65 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(66 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(67 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(68 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(69 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(70 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(71 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(72 + inPos)) << 54) & 288230376151711743L);
out[10 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(72 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(73 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(74 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(75 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(76 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(77 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(78 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(79 + inPos)) << 52) & 288230376151711743L);
out[11 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(79 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(80 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(81 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(82 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(83 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(84 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(85 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(86 + inPos)) << 50) & 288230376151711743L);
out[12 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(87 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(88 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(89 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(90 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(91 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(92 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(93 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(94 + inPos)) << 56) & 288230376151711743L);
out[13 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(94 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(95 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(96 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(97 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(98 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(99 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(100 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(101 + inPos)) << 54) & 288230376151711743L);
out[14 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(101 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(102 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(103 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(104 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(105 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(106 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(107 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(108 + inPos)) << 52) & 288230376151711743L);
out[15 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(108 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(109 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(110 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(111 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(112 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(113 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(114 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(115 + inPos)) << 50) & 288230376151711743L);
out[16 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(116 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(117 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(118 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(119 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(120 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(121 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(122 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(123 + inPos)) << 56) & 288230376151711743L);
out[17 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(123 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(124 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(125 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(126 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(127 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(128 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(129 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(130 + inPos)) << 54) & 288230376151711743L);
out[18 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(130 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(131 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(132 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(133 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(134 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(135 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(136 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(137 + inPos)) << 52) & 288230376151711743L);
out[19 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(137 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(138 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(139 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(140 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(141 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(142 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(143 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(144 + inPos)) << 50) & 288230376151711743L);
out[20 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(145 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(146 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(147 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(148 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(149 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(150 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(151 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(152 + inPos)) << 56) & 288230376151711743L);
out[21 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(152 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(153 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(154 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(155 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(156 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(157 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(158 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(159 + inPos)) << 54) & 288230376151711743L);
out[22 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(159 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(160 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(161 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(162 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(163 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(164 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(165 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(166 + inPos)) << 52) & 288230376151711743L);
out[23 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(166 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(167 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(168 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(169 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(170 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(171 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(172 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(173 + inPos)) << 50) & 288230376151711743L);
out[24 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(174 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(175 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(176 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(177 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(178 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(179 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(180 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(181 + inPos)) << 56) & 288230376151711743L);
out[25 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(181 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(182 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(183 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(184 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(185 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(186 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(187 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(188 + inPos)) << 54) & 288230376151711743L);
out[26 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(188 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(189 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(190 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(191 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(192 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(193 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(194 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(195 + inPos)) << 52) & 288230376151711743L);
out[27 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(195 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(196 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(197 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(198 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(199 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(200 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(201 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(202 + inPos)) << 50) & 288230376151711743L);
out[28 + outPos] =
// [76543210]
// [__________________________________________________76543210]
((((long)in.get(203 + inPos)) ) & 255L)
| // [76543210]
// [__________________________________________54321098________]
((((long)in.get(204 + inPos)) << 8) & 65535L)
| // [76543210]
// [__________________________________32109876________________]
((((long)in.get(205 + inPos)) << 16) & 16777215L)
| // [76543210]
// [__________________________10987654________________________]
((((long)in.get(206 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [__________________98765432________________________________]
((((long)in.get(207 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [__________76543210________________________________________]
((((long)in.get(208 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [__54321098________________________________________________]
((((long)in.get(209 + inPos)) << 48) & 72057594037927935L)
| // [______10]
// [76________________________________________________________]
((((long)in.get(210 + inPos)) << 56) & 288230376151711743L);
out[29 + outPos] =
// [765432__]
// [____________________________________________________543210]
((((long)in.get(210 + inPos)) >> 2) & 63L)
| // [76543210]
// [____________________________________________32109876______]
((((long)in.get(211 + inPos)) << 6) & 16383L)
| // [76543210]
// [____________________________________10987654______________]
((((long)in.get(212 + inPos)) << 14) & 4194303L)
| // [76543210]
// [____________________________98765432______________________]
((((long)in.get(213 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [____________________76543210______________________________]
((((long)in.get(214 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [____________54321098______________________________________]
((((long)in.get(215 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [____32109876______________________________________________]
((((long)in.get(216 + inPos)) << 46) & 18014398509481983L)
| // [____3210]
// [7654______________________________________________________]
((((long)in.get(217 + inPos)) << 54) & 288230376151711743L);
out[30 + outPos] =
// [7654____]
// [______________________________________________________3210]
((((long)in.get(217 + inPos)) >> 4) & 15L)
| // [76543210]
// [______________________________________________10987654____]
((((long)in.get(218 + inPos)) << 4) & 4095L)
| // [76543210]
// [______________________________________98765432____________]
((((long)in.get(219 + inPos)) << 12) & 1048575L)
| // [76543210]
// [______________________________76543210____________________]
((((long)in.get(220 + inPos)) << 20) & 268435455L)
| // [76543210]
// [______________________54321098____________________________]
((((long)in.get(221 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [______________32109876____________________________________]
((((long)in.get(222 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [______10987654____________________________________________]
((((long)in.get(223 + inPos)) << 44) & 4503599627370495L)
| // [__543210]
// [765432____________________________________________________]
((((long)in.get(224 + inPos)) << 52) & 288230376151711743L);
out[31 + outPos] =
// [76______]
// [________________________________________________________10]
((((long)in.get(224 + inPos)) >> 6) & 3L)
| // [76543210]
// [________________________________________________98765432__]
((((long)in.get(225 + inPos)) << 2) & 1023L)
| // [76543210]
// [________________________________________76543210__________]
((((long)in.get(226 + inPos)) << 10) & 262143L)
| // [76543210]
// [________________________________54321098__________________]
((((long)in.get(227 + inPos)) << 18) & 67108863L)
| // [76543210]
// [________________________32109876__________________________]
((((long)in.get(228 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [________________10987654__________________________________]
((((long)in.get(229 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [________98765432__________________________________________]
((((long)in.get(230 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [76543210__________________________________________________]
((((long)in.get(231 + inPos)) << 50) & 288230376151711743L);
}
}
private static final class Packer59 extends BytePackerForLong {
private Packer59() {
super(59);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________________________76543210]
((in[ 0 + inPos] & 576460752303423487L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________________________54321098________]
((in[ 0 + inPos] & 576460752303423487L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________________________10987654________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___________________98765432________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___________76543210________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [___54321098________________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_____210]
// [876________________________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 56)
| // [76543___]
// [______________________________________________________43210]
((in[ 1 + inPos] & 576460752303423487L) << 3)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________________21098765_____]
((in[ 1 + inPos] & 576460752303423487L) >>> 5)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543_____________]
((in[ 1 + inPos] & 576460752303423487L) >>> 13)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_____________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 21)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________65432109_____________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 29)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________43210987_____________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 37)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______21098765_____________________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 45)) & 255);
out[14 + outPos] = (byte)((
// [__543210]
// [876543_____________________________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 53)
| // [76______]
// [_________________________________________________________10]
((in[ 2 + inPos] & 576460752303423487L) << 6)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________________________________________98765432__]
((in[ 2 + inPos] & 576460752303423487L) >>> 2)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210__________]
((in[ 2 + inPos] & 576460752303423487L) >>> 10)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098__________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 18)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_________________________32109876__________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 26)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_________________10987654__________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 34)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_________98765432__________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 42)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_76543210__________________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 50)) & 255);
out[22 + outPos] = (byte)((
// [_______0]
// [8__________________________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 58)
| // [7654321_]
// [____________________________________________________6543210]
((in[ 3 + inPos] & 576460752303423487L) << 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________________43210987_______]
((in[ 3 + inPos] & 576460752303423487L) >>> 7)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_______________]
((in[ 3 + inPos] & 576460752303423487L) >>> 15)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_______________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 23)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________87654321_______________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 31)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________65432109_______________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 39)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____43210987_______________________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 47)) & 255);
out[29 + outPos] = (byte)((
// [____3210]
// [8765_______________________________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 55)
| // [7654____]
// [_______________________________________________________3210]
((in[ 4 + inPos] & 576460752303423487L) << 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______________________________________________10987654____]
((in[ 4 + inPos] & 576460752303423487L) >>> 4)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432____________]
((in[ 4 + inPos] & 576460752303423487L) >>> 12)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210____________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 20)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_______________________54321098____________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 28)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_______________32109876____________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 36)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_______10987654____________________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 44)) & 255);
out[36 + outPos] = (byte)((
// [_6543210]
// [8765432____________________________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 52)
| // [7_______]
// [__________________________________________________________0]
((in[ 5 + inPos] & 576460752303423487L) << 7)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________________________________________87654321_]
((in[ 5 + inPos] & 576460752303423487L) >>> 1)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________________________________65432109_________]
((in[ 5 + inPos] & 576460752303423487L) >>> 9)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 17)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 25)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________09876543_________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 33)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________87654321_________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 41)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__65432109_________________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 49)) & 255);
out[44 + outPos] = (byte)((
// [______10]
// [87_________________________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 57)
| // [765432__]
// [_____________________________________________________543210]
((in[ 6 + inPos] & 576460752303423487L) << 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_____________________________________________32109876______]
((in[ 6 + inPos] & 576460752303423487L) >>> 6)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654______________]
((in[ 6 + inPos] & 576460752303423487L) >>> 14)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432______________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 22)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_____________________76543210______________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 30)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____________54321098______________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 38)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_____32109876______________________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 46)) & 255);
out[51 + outPos] = (byte)((
// [___43210]
// [87654______________________________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 54)
| // [765_____]
// [________________________________________________________210]
((in[ 7 + inPos] & 576460752303423487L) << 5)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________________________09876543___]
((in[ 7 + inPos] & 576460752303423487L) >>> 3)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321___________]
((in[ 7 + inPos] & 576460752303423487L) >>> 11)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________65432109___________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 19)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________43210987___________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 27)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________21098765___________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 35)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________09876543___________________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 43)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [87654321___________________________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 51)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [___________________________________________________76543210]
((in[ 0 + inPos] & 576460752303423487L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [___________________________________________54321098________]
((in[ 0 + inPos] & 576460752303423487L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [___________________________10987654________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [___________________98765432________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [___________76543210________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [___54321098________________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_____210]
// [876________________________________________________________]
((in[ 0 + inPos] & 576460752303423487L) >>> 56)
| // [76543___]
// [______________________________________________________43210]
((in[ 1 + inPos] & 576460752303423487L) << 3)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________________21098765_____]
((in[ 1 + inPos] & 576460752303423487L) >>> 5)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543_____________]
((in[ 1 + inPos] & 576460752303423487L) >>> 13)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_____________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 21)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________65432109_____________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 29)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________43210987_____________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 37)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______21098765_____________________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 45)) & 255);
out[14 + outPos] = (byte)((
// [__543210]
// [876543_____________________________________________________]
((in[ 1 + inPos] & 576460752303423487L) >>> 53)
| // [76______]
// [_________________________________________________________10]
((in[ 2 + inPos] & 576460752303423487L) << 6)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [_________________________________________________98765432__]
((in[ 2 + inPos] & 576460752303423487L) >>> 2)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210__________]
((in[ 2 + inPos] & 576460752303423487L) >>> 10)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098__________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 18)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_________________________32109876__________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 26)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_________________10987654__________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 34)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_________98765432__________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 42)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_76543210__________________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 50)) & 255);
out[22 + outPos] = (byte)((
// [_______0]
// [8__________________________________________________________]
((in[ 2 + inPos] & 576460752303423487L) >>> 58)
| // [7654321_]
// [____________________________________________________6543210]
((in[ 3 + inPos] & 576460752303423487L) << 1)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________________43210987_______]
((in[ 3 + inPos] & 576460752303423487L) >>> 7)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_______________]
((in[ 3 + inPos] & 576460752303423487L) >>> 15)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_______________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 23)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________87654321_______________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 31)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________65432109_______________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 39)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____43210987_______________________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 47)) & 255);
out[29 + outPos] = (byte)((
// [____3210]
// [8765_______________________________________________________]
((in[ 3 + inPos] & 576460752303423487L) >>> 55)
| // [7654____]
// [_______________________________________________________3210]
((in[ 4 + inPos] & 576460752303423487L) << 4)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [_______________________________________________10987654____]
((in[ 4 + inPos] & 576460752303423487L) >>> 4)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432____________]
((in[ 4 + inPos] & 576460752303423487L) >>> 12)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210____________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 20)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_______________________54321098____________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 28)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_______________32109876____________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 36)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_______10987654____________________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 44)) & 255);
out[36 + outPos] = (byte)((
// [_6543210]
// [8765432____________________________________________________]
((in[ 4 + inPos] & 576460752303423487L) >>> 52)
| // [7_______]
// [__________________________________________________________0]
((in[ 5 + inPos] & 576460752303423487L) << 7)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [__________________________________________________87654321_]
((in[ 5 + inPos] & 576460752303423487L) >>> 1)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [__________________________________________65432109_________]
((in[ 5 + inPos] & 576460752303423487L) >>> 9)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 17)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 25)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________09876543_________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 33)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________87654321_________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 41)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__65432109_________________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 49)) & 255);
out[44 + outPos] = (byte)((
// [______10]
// [87_________________________________________________________]
((in[ 5 + inPos] & 576460752303423487L) >>> 57)
| // [765432__]
// [_____________________________________________________543210]
((in[ 6 + inPos] & 576460752303423487L) << 2)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [_____________________________________________32109876______]
((in[ 6 + inPos] & 576460752303423487L) >>> 6)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654______________]
((in[ 6 + inPos] & 576460752303423487L) >>> 14)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432______________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 22)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_____________________76543210______________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 30)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_____________54321098______________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 38)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_____32109876______________________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 46)) & 255);
out[51 + outPos] = (byte)((
// [___43210]
// [87654______________________________________________________]
((in[ 6 + inPos] & 576460752303423487L) >>> 54)
| // [765_____]
// [________________________________________________________210]
((in[ 7 + inPos] & 576460752303423487L) << 5)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________________________________09876543___]
((in[ 7 + inPos] & 576460752303423487L) >>> 3)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321___________]
((in[ 7 + inPos] & 576460752303423487L) >>> 11)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________65432109___________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 19)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________43210987___________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 27)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________21098765___________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 35)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________09876543___________________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 43)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [87654321___________________________________________________]
((in[ 7 + inPos] & 576460752303423487L) >>> 51)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [___________________________________________________76543210]
((in[ 8 + inPos] & 576460752303423487L))) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [___________________________________________54321098________]
((in[ 8 + inPos] & 576460752303423487L) >>> 8)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 16)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [___________________________10987654________________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 24)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [___________________98765432________________________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 32)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [___________76543210________________________________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 40)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [___54321098________________________________________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 48)) & 255);
out[66 + outPos] = (byte)((
// [_____210]
// [876________________________________________________________]
((in[ 8 + inPos] & 576460752303423487L) >>> 56)
| // [76543___]
// [______________________________________________________43210]
((in[ 9 + inPos] & 576460752303423487L) << 3)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______________________________________________21098765_____]
((in[ 9 + inPos] & 576460752303423487L) >>> 5)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543_____________]
((in[ 9 + inPos] & 576460752303423487L) >>> 13)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_____________________]
((in[ 9 + inPos] & 576460752303423487L) >>> 21)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [______________________65432109_____________________________]
((in[ 9 + inPos] & 576460752303423487L) >>> 29)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [______________43210987_____________________________________]
((in[ 9 + inPos] & 576460752303423487L) >>> 37)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [______21098765_____________________________________________]
((in[ 9 + inPos] & 576460752303423487L) >>> 45)) & 255);
out[73 + outPos] = (byte)((
// [__543210]
// [876543_____________________________________________________]
((in[ 9 + inPos] & 576460752303423487L) >>> 53)
| // [76______]
// [_________________________________________________________10]
((in[10 + inPos] & 576460752303423487L) << 6)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [_________________________________________________98765432__]
((in[10 + inPos] & 576460752303423487L) >>> 2)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210__________]
((in[10 + inPos] & 576460752303423487L) >>> 10)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098__________________]
((in[10 + inPos] & 576460752303423487L) >>> 18)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_________________________32109876__________________________]
((in[10 + inPos] & 576460752303423487L) >>> 26)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_________________10987654__________________________________]
((in[10 + inPos] & 576460752303423487L) >>> 34)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_________98765432__________________________________________]
((in[10 + inPos] & 576460752303423487L) >>> 42)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_76543210__________________________________________________]
((in[10 + inPos] & 576460752303423487L) >>> 50)) & 255);
out[81 + outPos] = (byte)((
// [_______0]
// [8__________________________________________________________]
((in[10 + inPos] & 576460752303423487L) >>> 58)
| // [7654321_]
// [____________________________________________________6543210]
((in[11 + inPos] & 576460752303423487L) << 1)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [____________________________________________43210987_______]
((in[11 + inPos] & 576460752303423487L) >>> 7)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_______________]
((in[11 + inPos] & 576460752303423487L) >>> 15)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_______________________]
((in[11 + inPos] & 576460752303423487L) >>> 23)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________________87654321_______________________________]
((in[11 + inPos] & 576460752303423487L) >>> 31)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____________65432109_______________________________________]
((in[11 + inPos] & 576460752303423487L) >>> 39)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [____43210987_______________________________________________]
((in[11 + inPos] & 576460752303423487L) >>> 47)) & 255);
out[88 + outPos] = (byte)((
// [____3210]
// [8765_______________________________________________________]
((in[11 + inPos] & 576460752303423487L) >>> 55)
| // [7654____]
// [_______________________________________________________3210]
((in[12 + inPos] & 576460752303423487L) << 4)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [_______________________________________________10987654____]
((in[12 + inPos] & 576460752303423487L) >>> 4)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432____________]
((in[12 + inPos] & 576460752303423487L) >>> 12)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210____________________]
((in[12 + inPos] & 576460752303423487L) >>> 20)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [_______________________54321098____________________________]
((in[12 + inPos] & 576460752303423487L) >>> 28)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_______________32109876____________________________________]
((in[12 + inPos] & 576460752303423487L) >>> 36)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_______10987654____________________________________________]
((in[12 + inPos] & 576460752303423487L) >>> 44)) & 255);
out[95 + outPos] = (byte)((
// [_6543210]
// [8765432____________________________________________________]
((in[12 + inPos] & 576460752303423487L) >>> 52)
| // [7_______]
// [__________________________________________________________0]
((in[13 + inPos] & 576460752303423487L) << 7)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [__________________________________________________87654321_]
((in[13 + inPos] & 576460752303423487L) >>> 1)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [__________________________________________65432109_________]
((in[13 + inPos] & 576460752303423487L) >>> 9)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_________________]
((in[13 + inPos] & 576460752303423487L) >>> 17)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_________________________]
((in[13 + inPos] & 576460752303423487L) >>> 25)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [__________________09876543_________________________________]
((in[13 + inPos] & 576460752303423487L) >>> 33)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [__________87654321_________________________________________]
((in[13 + inPos] & 576460752303423487L) >>> 41)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [__65432109_________________________________________________]
((in[13 + inPos] & 576460752303423487L) >>> 49)) & 255);
out[103 + outPos] = (byte)((
// [______10]
// [87_________________________________________________________]
((in[13 + inPos] & 576460752303423487L) >>> 57)
| // [765432__]
// [_____________________________________________________543210]
((in[14 + inPos] & 576460752303423487L) << 2)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [_____________________________________________32109876______]
((in[14 + inPos] & 576460752303423487L) >>> 6)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654______________]
((in[14 + inPos] & 576460752303423487L) >>> 14)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432______________________]
((in[14 + inPos] & 576460752303423487L) >>> 22)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [_____________________76543210______________________________]
((in[14 + inPos] & 576460752303423487L) >>> 30)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [_____________54321098______________________________________]
((in[14 + inPos] & 576460752303423487L) >>> 38)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [_____32109876______________________________________________]
((in[14 + inPos] & 576460752303423487L) >>> 46)) & 255);
out[110 + outPos] = (byte)((
// [___43210]
// [87654______________________________________________________]
((in[14 + inPos] & 576460752303423487L) >>> 54)
| // [765_____]
// [________________________________________________________210]
((in[15 + inPos] & 576460752303423487L) << 5)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [________________________________________________09876543___]
((in[15 + inPos] & 576460752303423487L) >>> 3)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321___________]
((in[15 + inPos] & 576460752303423487L) >>> 11)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________________65432109___________________]
((in[15 + inPos] & 576460752303423487L) >>> 19)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________________43210987___________________________]
((in[15 + inPos] & 576460752303423487L) >>> 27)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________21098765___________________________________]
((in[15 + inPos] & 576460752303423487L) >>> 35)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________09876543___________________________________________]
((in[15 + inPos] & 576460752303423487L) >>> 43)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [87654321___________________________________________________]
((in[15 + inPos] & 576460752303423487L) >>> 51)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [___________________________________________________76543210]
((in[16 + inPos] & 576460752303423487L))) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [___________________________________________54321098________]
((in[16 + inPos] & 576460752303423487L) >>> 8)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876________________]
((in[16 + inPos] & 576460752303423487L) >>> 16)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [___________________________10987654________________________]
((in[16 + inPos] & 576460752303423487L) >>> 24)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [___________________98765432________________________________]
((in[16 + inPos] & 576460752303423487L) >>> 32)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [___________76543210________________________________________]
((in[16 + inPos] & 576460752303423487L) >>> 40)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [___54321098________________________________________________]
((in[16 + inPos] & 576460752303423487L) >>> 48)) & 255);
out[125 + outPos] = (byte)((
// [_____210]
// [876________________________________________________________]
((in[16 + inPos] & 576460752303423487L) >>> 56)
| // [76543___]
// [______________________________________________________43210]
((in[17 + inPos] & 576460752303423487L) << 3)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [______________________________________________21098765_____]
((in[17 + inPos] & 576460752303423487L) >>> 5)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543_____________]
((in[17 + inPos] & 576460752303423487L) >>> 13)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_____________________]
((in[17 + inPos] & 576460752303423487L) >>> 21)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [______________________65432109_____________________________]
((in[17 + inPos] & 576460752303423487L) >>> 29)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [______________43210987_____________________________________]
((in[17 + inPos] & 576460752303423487L) >>> 37)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [______21098765_____________________________________________]
((in[17 + inPos] & 576460752303423487L) >>> 45)) & 255);
out[132 + outPos] = (byte)((
// [__543210]
// [876543_____________________________________________________]
((in[17 + inPos] & 576460752303423487L) >>> 53)
| // [76______]
// [_________________________________________________________10]
((in[18 + inPos] & 576460752303423487L) << 6)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [_________________________________________________98765432__]
((in[18 + inPos] & 576460752303423487L) >>> 2)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210__________]
((in[18 + inPos] & 576460752303423487L) >>> 10)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098__________________]
((in[18 + inPos] & 576460752303423487L) >>> 18)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [_________________________32109876__________________________]
((in[18 + inPos] & 576460752303423487L) >>> 26)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [_________________10987654__________________________________]
((in[18 + inPos] & 576460752303423487L) >>> 34)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [_________98765432__________________________________________]
((in[18 + inPos] & 576460752303423487L) >>> 42)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [_76543210__________________________________________________]
((in[18 + inPos] & 576460752303423487L) >>> 50)) & 255);
out[140 + outPos] = (byte)((
// [_______0]
// [8__________________________________________________________]
((in[18 + inPos] & 576460752303423487L) >>> 58)
| // [7654321_]
// [____________________________________________________6543210]
((in[19 + inPos] & 576460752303423487L) << 1)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [____________________________________________43210987_______]
((in[19 + inPos] & 576460752303423487L) >>> 7)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_______________]
((in[19 + inPos] & 576460752303423487L) >>> 15)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_______________________]
((in[19 + inPos] & 576460752303423487L) >>> 23)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [____________________87654321_______________________________]
((in[19 + inPos] & 576460752303423487L) >>> 31)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________65432109_______________________________________]
((in[19 + inPos] & 576460752303423487L) >>> 39)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____43210987_______________________________________________]
((in[19 + inPos] & 576460752303423487L) >>> 47)) & 255);
out[147 + outPos] = (byte)((
// [____3210]
// [8765_______________________________________________________]
((in[19 + inPos] & 576460752303423487L) >>> 55)
| // [7654____]
// [_______________________________________________________3210]
((in[20 + inPos] & 576460752303423487L) << 4)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_______________________________________________10987654____]
((in[20 + inPos] & 576460752303423487L) >>> 4)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432____________]
((in[20 + inPos] & 576460752303423487L) >>> 12)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210____________________]
((in[20 + inPos] & 576460752303423487L) >>> 20)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [_______________________54321098____________________________]
((in[20 + inPos] & 576460752303423487L) >>> 28)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [_______________32109876____________________________________]
((in[20 + inPos] & 576460752303423487L) >>> 36)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [_______10987654____________________________________________]
((in[20 + inPos] & 576460752303423487L) >>> 44)) & 255);
out[154 + outPos] = (byte)((
// [_6543210]
// [8765432____________________________________________________]
((in[20 + inPos] & 576460752303423487L) >>> 52)
| // [7_______]
// [__________________________________________________________0]
((in[21 + inPos] & 576460752303423487L) << 7)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [__________________________________________________87654321_]
((in[21 + inPos] & 576460752303423487L) >>> 1)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [__________________________________________65432109_________]
((in[21 + inPos] & 576460752303423487L) >>> 9)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_________________]
((in[21 + inPos] & 576460752303423487L) >>> 17)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_________________________]
((in[21 + inPos] & 576460752303423487L) >>> 25)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [__________________09876543_________________________________]
((in[21 + inPos] & 576460752303423487L) >>> 33)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [__________87654321_________________________________________]
((in[21 + inPos] & 576460752303423487L) >>> 41)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [__65432109_________________________________________________]
((in[21 + inPos] & 576460752303423487L) >>> 49)) & 255);
out[162 + outPos] = (byte)((
// [______10]
// [87_________________________________________________________]
((in[21 + inPos] & 576460752303423487L) >>> 57)
| // [765432__]
// [_____________________________________________________543210]
((in[22 + inPos] & 576460752303423487L) << 2)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [_____________________________________________32109876______]
((in[22 + inPos] & 576460752303423487L) >>> 6)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654______________]
((in[22 + inPos] & 576460752303423487L) >>> 14)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432______________________]
((in[22 + inPos] & 576460752303423487L) >>> 22)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [_____________________76543210______________________________]
((in[22 + inPos] & 576460752303423487L) >>> 30)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [_____________54321098______________________________________]
((in[22 + inPos] & 576460752303423487L) >>> 38)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [_____32109876______________________________________________]
((in[22 + inPos] & 576460752303423487L) >>> 46)) & 255);
out[169 + outPos] = (byte)((
// [___43210]
// [87654______________________________________________________]
((in[22 + inPos] & 576460752303423487L) >>> 54)
| // [765_____]
// [________________________________________________________210]
((in[23 + inPos] & 576460752303423487L) << 5)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________________________________09876543___]
((in[23 + inPos] & 576460752303423487L) >>> 3)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321___________]
((in[23 + inPos] & 576460752303423487L) >>> 11)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________________________________65432109___________________]
((in[23 + inPos] & 576460752303423487L) >>> 19)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________________________43210987___________________________]
((in[23 + inPos] & 576460752303423487L) >>> 27)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [________________21098765___________________________________]
((in[23 + inPos] & 576460752303423487L) >>> 35)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [________09876543___________________________________________]
((in[23 + inPos] & 576460752303423487L) >>> 43)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [87654321___________________________________________________]
((in[23 + inPos] & 576460752303423487L) >>> 51)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [___________________________________________________76543210]
((in[24 + inPos] & 576460752303423487L))) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [___________________________________________54321098________]
((in[24 + inPos] & 576460752303423487L) >>> 8)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [___________________________________32109876________________]
((in[24 + inPos] & 576460752303423487L) >>> 16)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [___________________________10987654________________________]
((in[24 + inPos] & 576460752303423487L) >>> 24)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [___________________98765432________________________________]
((in[24 + inPos] & 576460752303423487L) >>> 32)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [___________76543210________________________________________]
((in[24 + inPos] & 576460752303423487L) >>> 40)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [___54321098________________________________________________]
((in[24 + inPos] & 576460752303423487L) >>> 48)) & 255);
out[184 + outPos] = (byte)((
// [_____210]
// [876________________________________________________________]
((in[24 + inPos] & 576460752303423487L) >>> 56)
| // [76543___]
// [______________________________________________________43210]
((in[25 + inPos] & 576460752303423487L) << 3)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [______________________________________________21098765_____]
((in[25 + inPos] & 576460752303423487L) >>> 5)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [______________________________________09876543_____________]
((in[25 + inPos] & 576460752303423487L) >>> 13)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [______________________________87654321_____________________]
((in[25 + inPos] & 576460752303423487L) >>> 21)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [______________________65432109_____________________________]
((in[25 + inPos] & 576460752303423487L) >>> 29)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [______________43210987_____________________________________]
((in[25 + inPos] & 576460752303423487L) >>> 37)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [______21098765_____________________________________________]
((in[25 + inPos] & 576460752303423487L) >>> 45)) & 255);
out[191 + outPos] = (byte)((
// [__543210]
// [876543_____________________________________________________]
((in[25 + inPos] & 576460752303423487L) >>> 53)
| // [76______]
// [_________________________________________________________10]
((in[26 + inPos] & 576460752303423487L) << 6)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [_________________________________________________98765432__]
((in[26 + inPos] & 576460752303423487L) >>> 2)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [_________________________________________76543210__________]
((in[26 + inPos] & 576460752303423487L) >>> 10)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [_________________________________54321098__________________]
((in[26 + inPos] & 576460752303423487L) >>> 18)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [_________________________32109876__________________________]
((in[26 + inPos] & 576460752303423487L) >>> 26)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [_________________10987654__________________________________]
((in[26 + inPos] & 576460752303423487L) >>> 34)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [_________98765432__________________________________________]
((in[26 + inPos] & 576460752303423487L) >>> 42)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [_76543210__________________________________________________]
((in[26 + inPos] & 576460752303423487L) >>> 50)) & 255);
out[199 + outPos] = (byte)((
// [_______0]
// [8__________________________________________________________]
((in[26 + inPos] & 576460752303423487L) >>> 58)
| // [7654321_]
// [____________________________________________________6543210]
((in[27 + inPos] & 576460752303423487L) << 1)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [____________________________________________43210987_______]
((in[27 + inPos] & 576460752303423487L) >>> 7)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [____________________________________21098765_______________]
((in[27 + inPos] & 576460752303423487L) >>> 15)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [____________________________09876543_______________________]
((in[27 + inPos] & 576460752303423487L) >>> 23)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [____________________87654321_______________________________]
((in[27 + inPos] & 576460752303423487L) >>> 31)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [____________65432109_______________________________________]
((in[27 + inPos] & 576460752303423487L) >>> 39)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [____43210987_______________________________________________]
((in[27 + inPos] & 576460752303423487L) >>> 47)) & 255);
out[206 + outPos] = (byte)((
// [____3210]
// [8765_______________________________________________________]
((in[27 + inPos] & 576460752303423487L) >>> 55)
| // [7654____]
// [_______________________________________________________3210]
((in[28 + inPos] & 576460752303423487L) << 4)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [_______________________________________________10987654____]
((in[28 + inPos] & 576460752303423487L) >>> 4)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [_______________________________________98765432____________]
((in[28 + inPos] & 576460752303423487L) >>> 12)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [_______________________________76543210____________________]
((in[28 + inPos] & 576460752303423487L) >>> 20)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [_______________________54321098____________________________]
((in[28 + inPos] & 576460752303423487L) >>> 28)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [_______________32109876____________________________________]
((in[28 + inPos] & 576460752303423487L) >>> 36)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [_______10987654____________________________________________]
((in[28 + inPos] & 576460752303423487L) >>> 44)) & 255);
out[213 + outPos] = (byte)((
// [_6543210]
// [8765432____________________________________________________]
((in[28 + inPos] & 576460752303423487L) >>> 52)
| // [7_______]
// [__________________________________________________________0]
((in[29 + inPos] & 576460752303423487L) << 7)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [__________________________________________________87654321_]
((in[29 + inPos] & 576460752303423487L) >>> 1)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [__________________________________________65432109_________]
((in[29 + inPos] & 576460752303423487L) >>> 9)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [__________________________________43210987_________________]
((in[29 + inPos] & 576460752303423487L) >>> 17)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [__________________________21098765_________________________]
((in[29 + inPos] & 576460752303423487L) >>> 25)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [__________________09876543_________________________________]
((in[29 + inPos] & 576460752303423487L) >>> 33)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [__________87654321_________________________________________]
((in[29 + inPos] & 576460752303423487L) >>> 41)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [__65432109_________________________________________________]
((in[29 + inPos] & 576460752303423487L) >>> 49)) & 255);
out[221 + outPos] = (byte)((
// [______10]
// [87_________________________________________________________]
((in[29 + inPos] & 576460752303423487L) >>> 57)
| // [765432__]
// [_____________________________________________________543210]
((in[30 + inPos] & 576460752303423487L) << 2)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [_____________________________________________32109876______]
((in[30 + inPos] & 576460752303423487L) >>> 6)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [_____________________________________10987654______________]
((in[30 + inPos] & 576460752303423487L) >>> 14)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [_____________________________98765432______________________]
((in[30 + inPos] & 576460752303423487L) >>> 22)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [_____________________76543210______________________________]
((in[30 + inPos] & 576460752303423487L) >>> 30)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [_____________54321098______________________________________]
((in[30 + inPos] & 576460752303423487L) >>> 38)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [_____32109876______________________________________________]
((in[30 + inPos] & 576460752303423487L) >>> 46)) & 255);
out[228 + outPos] = (byte)((
// [___43210]
// [87654______________________________________________________]
((in[30 + inPos] & 576460752303423487L) >>> 54)
| // [765_____]
// [________________________________________________________210]
((in[31 + inPos] & 576460752303423487L) << 5)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [________________________________________________09876543___]
((in[31 + inPos] & 576460752303423487L) >>> 3)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [________________________________________87654321___________]
((in[31 + inPos] & 576460752303423487L) >>> 11)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [________________________________65432109___________________]
((in[31 + inPos] & 576460752303423487L) >>> 19)) & 255);
out[232 + outPos] = (byte)((
// [76543210]
// [________________________43210987___________________________]
((in[31 + inPos] & 576460752303423487L) >>> 27)) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [________________21098765___________________________________]
((in[31 + inPos] & 576460752303423487L) >>> 35)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [________09876543___________________________________________]
((in[31 + inPos] & 576460752303423487L) >>> 43)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [87654321___________________________________________________]
((in[31 + inPos] & 576460752303423487L) >>> 51)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 576460752303423487L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in[ 7 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in[ 8 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in[ 9 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in[10 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in[11 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in[12 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in[13 + inPos]) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in[14 + inPos]) << 53) & 576460752303423487L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in[14 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in[15 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in[16 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in[17 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in[18 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in[19 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in[20 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in[21 + inPos]) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in[22 + inPos]) << 58) & 576460752303423487L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in[22 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in[23 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in[24 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in[25 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in[26 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in[27 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in[28 + inPos]) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in[29 + inPos]) << 55) & 576460752303423487L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in[29 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in[30 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in[31 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in[32 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in[33 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in[34 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in[35 + inPos]) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in[36 + inPos]) << 52) & 576460752303423487L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in[36 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in[37 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in[38 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in[39 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in[40 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in[41 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in[42 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in[43 + inPos]) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in[44 + inPos]) << 57) & 576460752303423487L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in[44 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in[45 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in[46 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in[47 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in[48 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in[49 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in[50 + inPos]) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in[51 + inPos]) << 54) & 576460752303423487L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in[51 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in[52 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in[53 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in[54 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in[55 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in[56 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in[57 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in[58 + inPos]) << 51) & 576460752303423487L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 576460752303423487L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in.get( 7 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in.get( 8 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in.get( 9 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in.get(10 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in.get(11 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in.get(12 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in.get(13 + inPos)) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in.get(14 + inPos)) << 53) & 576460752303423487L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in.get(14 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in.get(15 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in.get(16 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in.get(17 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in.get(18 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in.get(19 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in.get(20 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in.get(21 + inPos)) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in.get(22 + inPos)) << 58) & 576460752303423487L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in.get(22 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in.get(23 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in.get(24 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in.get(25 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in.get(26 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in.get(27 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in.get(28 + inPos)) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in.get(29 + inPos)) << 55) & 576460752303423487L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in.get(29 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in.get(30 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in.get(31 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in.get(32 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in.get(33 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in.get(34 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in.get(35 + inPos)) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in.get(36 + inPos)) << 52) & 576460752303423487L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in.get(36 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in.get(37 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in.get(38 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in.get(39 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in.get(40 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in.get(41 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in.get(42 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in.get(43 + inPos)) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in.get(44 + inPos)) << 57) & 576460752303423487L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in.get(44 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in.get(45 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in.get(46 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in.get(47 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in.get(48 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in.get(49 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in.get(50 + inPos)) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in.get(51 + inPos)) << 54) & 576460752303423487L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in.get(51 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in.get(52 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in.get(53 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in.get(54 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in.get(55 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in.get(56 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in.get(57 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in.get(58 + inPos)) << 51) & 576460752303423487L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 576460752303423487L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in[ 7 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in[ 8 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in[ 9 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in[10 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in[11 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in[12 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in[13 + inPos]) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in[14 + inPos]) << 53) & 576460752303423487L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in[14 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in[15 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in[16 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in[17 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in[18 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in[19 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in[20 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in[21 + inPos]) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in[22 + inPos]) << 58) & 576460752303423487L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in[22 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in[23 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in[24 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in[25 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in[26 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in[27 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in[28 + inPos]) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in[29 + inPos]) << 55) & 576460752303423487L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in[29 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in[30 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in[31 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in[32 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in[33 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in[34 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in[35 + inPos]) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in[36 + inPos]) << 52) & 576460752303423487L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in[36 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in[37 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in[38 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in[39 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in[40 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in[41 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in[42 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in[43 + inPos]) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in[44 + inPos]) << 57) & 576460752303423487L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in[44 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in[45 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in[46 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in[47 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in[48 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in[49 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in[50 + inPos]) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in[51 + inPos]) << 54) & 576460752303423487L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in[51 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in[52 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in[53 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in[54 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in[55 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in[56 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in[57 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in[58 + inPos]) << 51) & 576460752303423487L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in[59 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in[60 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in[61 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in[62 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in[63 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in[64 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in[65 + inPos]) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in[66 + inPos]) << 56) & 576460752303423487L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in[66 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in[67 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in[68 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in[69 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in[70 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in[71 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in[72 + inPos]) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in[73 + inPos]) << 53) & 576460752303423487L);
out[10 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in[73 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in[74 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in[75 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in[76 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in[77 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in[78 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in[79 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in[80 + inPos]) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in[81 + inPos]) << 58) & 576460752303423487L);
out[11 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in[81 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in[82 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in[83 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in[84 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in[85 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in[86 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in[87 + inPos]) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in[88 + inPos]) << 55) & 576460752303423487L);
out[12 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in[88 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in[89 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in[90 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in[91 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in[92 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in[93 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in[94 + inPos]) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in[95 + inPos]) << 52) & 576460752303423487L);
out[13 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in[95 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in[96 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in[97 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in[98 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in[99 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in[100 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in[101 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in[102 + inPos]) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in[103 + inPos]) << 57) & 576460752303423487L);
out[14 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in[103 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in[104 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in[105 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in[106 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in[107 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in[108 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in[109 + inPos]) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in[110 + inPos]) << 54) & 576460752303423487L);
out[15 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in[110 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in[111 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in[112 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in[113 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in[114 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in[115 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in[116 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in[117 + inPos]) << 51) & 576460752303423487L);
out[16 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in[118 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in[119 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in[120 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in[121 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in[122 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in[123 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in[124 + inPos]) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in[125 + inPos]) << 56) & 576460752303423487L);
out[17 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in[125 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in[126 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in[127 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in[128 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in[129 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in[130 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in[131 + inPos]) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in[132 + inPos]) << 53) & 576460752303423487L);
out[18 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in[132 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in[133 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in[134 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in[135 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in[136 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in[137 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in[138 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in[139 + inPos]) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in[140 + inPos]) << 58) & 576460752303423487L);
out[19 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in[140 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in[141 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in[142 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in[143 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in[144 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in[145 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in[146 + inPos]) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in[147 + inPos]) << 55) & 576460752303423487L);
out[20 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in[147 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in[148 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in[149 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in[150 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in[151 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in[152 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in[153 + inPos]) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in[154 + inPos]) << 52) & 576460752303423487L);
out[21 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in[154 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in[155 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in[156 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in[157 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in[158 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in[159 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in[160 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in[161 + inPos]) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in[162 + inPos]) << 57) & 576460752303423487L);
out[22 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in[162 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in[163 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in[164 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in[165 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in[166 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in[167 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in[168 + inPos]) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in[169 + inPos]) << 54) & 576460752303423487L);
out[23 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in[169 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in[170 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in[171 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in[172 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in[173 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in[174 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in[175 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in[176 + inPos]) << 51) & 576460752303423487L);
out[24 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in[177 + inPos]) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in[178 + inPos]) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in[179 + inPos]) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in[180 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in[181 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in[182 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in[183 + inPos]) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in[184 + inPos]) << 56) & 576460752303423487L);
out[25 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in[184 + inPos]) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in[185 + inPos]) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in[186 + inPos]) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in[187 + inPos]) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in[188 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in[189 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in[190 + inPos]) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in[191 + inPos]) << 53) & 576460752303423487L);
out[26 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in[191 + inPos]) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in[192 + inPos]) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in[193 + inPos]) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in[194 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in[195 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in[196 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in[197 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in[198 + inPos]) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in[199 + inPos]) << 58) & 576460752303423487L);
out[27 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in[199 + inPos]) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in[200 + inPos]) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in[201 + inPos]) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in[202 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in[203 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in[204 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in[205 + inPos]) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in[206 + inPos]) << 55) & 576460752303423487L);
out[28 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in[206 + inPos]) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in[207 + inPos]) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in[208 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in[209 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in[210 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in[211 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in[212 + inPos]) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in[213 + inPos]) << 52) & 576460752303423487L);
out[29 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in[213 + inPos]) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in[214 + inPos]) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in[215 + inPos]) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in[216 + inPos]) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in[217 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in[218 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in[219 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in[220 + inPos]) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in[221 + inPos]) << 57) & 576460752303423487L);
out[30 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in[221 + inPos]) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in[222 + inPos]) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in[223 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in[224 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in[225 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in[226 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in[227 + inPos]) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in[228 + inPos]) << 54) & 576460752303423487L);
out[31 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in[228 + inPos]) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in[229 + inPos]) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in[230 + inPos]) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in[231 + inPos]) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in[232 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in[233 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in[234 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in[235 + inPos]) << 51) & 576460752303423487L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 576460752303423487L);
out[ 1 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in.get( 7 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in.get( 8 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in.get( 9 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in.get(10 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in.get(11 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in.get(12 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in.get(13 + inPos)) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in.get(14 + inPos)) << 53) & 576460752303423487L);
out[ 2 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in.get(14 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in.get(15 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in.get(16 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in.get(17 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in.get(18 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in.get(19 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in.get(20 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in.get(21 + inPos)) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in.get(22 + inPos)) << 58) & 576460752303423487L);
out[ 3 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in.get(22 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in.get(23 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in.get(24 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in.get(25 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in.get(26 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in.get(27 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in.get(28 + inPos)) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in.get(29 + inPos)) << 55) & 576460752303423487L);
out[ 4 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in.get(29 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in.get(30 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in.get(31 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in.get(32 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in.get(33 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in.get(34 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in.get(35 + inPos)) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in.get(36 + inPos)) << 52) & 576460752303423487L);
out[ 5 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in.get(36 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in.get(37 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in.get(38 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in.get(39 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in.get(40 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in.get(41 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in.get(42 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in.get(43 + inPos)) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in.get(44 + inPos)) << 57) & 576460752303423487L);
out[ 6 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in.get(44 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in.get(45 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in.get(46 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in.get(47 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in.get(48 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in.get(49 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in.get(50 + inPos)) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in.get(51 + inPos)) << 54) & 576460752303423487L);
out[ 7 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in.get(51 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in.get(52 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in.get(53 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in.get(54 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in.get(55 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in.get(56 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in.get(57 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in.get(58 + inPos)) << 51) & 576460752303423487L);
out[ 8 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in.get(59 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in.get(60 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in.get(61 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in.get(62 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in.get(63 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in.get(64 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in.get(65 + inPos)) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in.get(66 + inPos)) << 56) & 576460752303423487L);
out[ 9 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in.get(66 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in.get(67 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in.get(68 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in.get(69 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in.get(70 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in.get(71 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in.get(72 + inPos)) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in.get(73 + inPos)) << 53) & 576460752303423487L);
out[10 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in.get(73 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in.get(74 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in.get(75 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in.get(76 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in.get(77 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in.get(78 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in.get(79 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in.get(80 + inPos)) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in.get(81 + inPos)) << 58) & 576460752303423487L);
out[11 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in.get(81 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in.get(82 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in.get(83 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in.get(84 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in.get(85 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in.get(86 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in.get(87 + inPos)) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in.get(88 + inPos)) << 55) & 576460752303423487L);
out[12 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in.get(88 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in.get(89 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in.get(90 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in.get(91 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in.get(92 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in.get(93 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in.get(94 + inPos)) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in.get(95 + inPos)) << 52) & 576460752303423487L);
out[13 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in.get(95 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in.get(96 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in.get(97 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in.get(98 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in.get(99 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in.get(100 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in.get(101 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in.get(102 + inPos)) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in.get(103 + inPos)) << 57) & 576460752303423487L);
out[14 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in.get(103 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in.get(104 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in.get(105 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in.get(106 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in.get(107 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in.get(108 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in.get(109 + inPos)) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in.get(110 + inPos)) << 54) & 576460752303423487L);
out[15 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in.get(110 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in.get(111 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in.get(112 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in.get(113 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in.get(114 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in.get(115 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in.get(116 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in.get(117 + inPos)) << 51) & 576460752303423487L);
out[16 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in.get(118 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in.get(119 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in.get(120 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in.get(121 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in.get(122 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in.get(123 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in.get(124 + inPos)) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in.get(125 + inPos)) << 56) & 576460752303423487L);
out[17 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in.get(125 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in.get(126 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in.get(127 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in.get(128 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in.get(129 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in.get(130 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in.get(131 + inPos)) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in.get(132 + inPos)) << 53) & 576460752303423487L);
out[18 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in.get(132 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in.get(133 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in.get(134 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in.get(135 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in.get(136 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in.get(137 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in.get(138 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in.get(139 + inPos)) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in.get(140 + inPos)) << 58) & 576460752303423487L);
out[19 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in.get(140 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in.get(141 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in.get(142 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in.get(143 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in.get(144 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in.get(145 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in.get(146 + inPos)) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in.get(147 + inPos)) << 55) & 576460752303423487L);
out[20 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in.get(147 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in.get(148 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in.get(149 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in.get(150 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in.get(151 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in.get(152 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in.get(153 + inPos)) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in.get(154 + inPos)) << 52) & 576460752303423487L);
out[21 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in.get(154 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in.get(155 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in.get(156 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in.get(157 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in.get(158 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in.get(159 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in.get(160 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in.get(161 + inPos)) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in.get(162 + inPos)) << 57) & 576460752303423487L);
out[22 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in.get(162 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in.get(163 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in.get(164 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in.get(165 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in.get(166 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in.get(167 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in.get(168 + inPos)) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in.get(169 + inPos)) << 54) & 576460752303423487L);
out[23 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in.get(169 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in.get(170 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in.get(171 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in.get(172 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in.get(173 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in.get(174 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in.get(175 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in.get(176 + inPos)) << 51) & 576460752303423487L);
out[24 + outPos] =
// [76543210]
// [___________________________________________________76543210]
((((long)in.get(177 + inPos)) ) & 255L)
| // [76543210]
// [___________________________________________54321098________]
((((long)in.get(178 + inPos)) << 8) & 65535L)
| // [76543210]
// [___________________________________32109876________________]
((((long)in.get(179 + inPos)) << 16) & 16777215L)
| // [76543210]
// [___________________________10987654________________________]
((((long)in.get(180 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [___________________98765432________________________________]
((((long)in.get(181 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [___________76543210________________________________________]
((((long)in.get(182 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [___54321098________________________________________________]
((((long)in.get(183 + inPos)) << 48) & 72057594037927935L)
| // [_____210]
// [876________________________________________________________]
((((long)in.get(184 + inPos)) << 56) & 576460752303423487L);
out[25 + outPos] =
// [76543___]
// [______________________________________________________43210]
((((long)in.get(184 + inPos)) >> 3) & 31L)
| // [76543210]
// [______________________________________________21098765_____]
((((long)in.get(185 + inPos)) << 5) & 8191L)
| // [76543210]
// [______________________________________09876543_____________]
((((long)in.get(186 + inPos)) << 13) & 2097151L)
| // [76543210]
// [______________________________87654321_____________________]
((((long)in.get(187 + inPos)) << 21) & 536870911L)
| // [76543210]
// [______________________65432109_____________________________]
((((long)in.get(188 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [______________43210987_____________________________________]
((((long)in.get(189 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [______21098765_____________________________________________]
((((long)in.get(190 + inPos)) << 45) & 9007199254740991L)
| // [__543210]
// [876543_____________________________________________________]
((((long)in.get(191 + inPos)) << 53) & 576460752303423487L);
out[26 + outPos] =
// [76______]
// [_________________________________________________________10]
((((long)in.get(191 + inPos)) >> 6) & 3L)
| // [76543210]
// [_________________________________________________98765432__]
((((long)in.get(192 + inPos)) << 2) & 1023L)
| // [76543210]
// [_________________________________________76543210__________]
((((long)in.get(193 + inPos)) << 10) & 262143L)
| // [76543210]
// [_________________________________54321098__________________]
((((long)in.get(194 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_________________________32109876__________________________]
((((long)in.get(195 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_________________10987654__________________________________]
((((long)in.get(196 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_________98765432__________________________________________]
((((long)in.get(197 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_76543210__________________________________________________]
((((long)in.get(198 + inPos)) << 50) & 288230376151711743L)
| // [_______0]
// [8__________________________________________________________]
((((long)in.get(199 + inPos)) << 58) & 576460752303423487L);
out[27 + outPos] =
// [7654321_]
// [____________________________________________________6543210]
((((long)in.get(199 + inPos)) >> 1) & 127L)
| // [76543210]
// [____________________________________________43210987_______]
((((long)in.get(200 + inPos)) << 7) & 32767L)
| // [76543210]
// [____________________________________21098765_______________]
((((long)in.get(201 + inPos)) << 15) & 8388607L)
| // [76543210]
// [____________________________09876543_______________________]
((((long)in.get(202 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [____________________87654321_______________________________]
((((long)in.get(203 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [____________65432109_______________________________________]
((((long)in.get(204 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [____43210987_______________________________________________]
((((long)in.get(205 + inPos)) << 47) & 36028797018963967L)
| // [____3210]
// [8765_______________________________________________________]
((((long)in.get(206 + inPos)) << 55) & 576460752303423487L);
out[28 + outPos] =
// [7654____]
// [_______________________________________________________3210]
((((long)in.get(206 + inPos)) >> 4) & 15L)
| // [76543210]
// [_______________________________________________10987654____]
((((long)in.get(207 + inPos)) << 4) & 4095L)
| // [76543210]
// [_______________________________________98765432____________]
((((long)in.get(208 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_______________________________76543210____________________]
((((long)in.get(209 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_______________________54321098____________________________]
((((long)in.get(210 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_______________32109876____________________________________]
((((long)in.get(211 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_______10987654____________________________________________]
((((long)in.get(212 + inPos)) << 44) & 4503599627370495L)
| // [_6543210]
// [8765432____________________________________________________]
((((long)in.get(213 + inPos)) << 52) & 576460752303423487L);
out[29 + outPos] =
// [7_______]
// [__________________________________________________________0]
((((long)in.get(213 + inPos)) >> 7) & 1L)
| // [76543210]
// [__________________________________________________87654321_]
((((long)in.get(214 + inPos)) << 1) & 511L)
| // [76543210]
// [__________________________________________65432109_________]
((((long)in.get(215 + inPos)) << 9) & 131071L)
| // [76543210]
// [__________________________________43210987_________________]
((((long)in.get(216 + inPos)) << 17) & 33554431L)
| // [76543210]
// [__________________________21098765_________________________]
((((long)in.get(217 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [__________________09876543_________________________________]
((((long)in.get(218 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [__________87654321_________________________________________]
((((long)in.get(219 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [__65432109_________________________________________________]
((((long)in.get(220 + inPos)) << 49) & 144115188075855871L)
| // [______10]
// [87_________________________________________________________]
((((long)in.get(221 + inPos)) << 57) & 576460752303423487L);
out[30 + outPos] =
// [765432__]
// [_____________________________________________________543210]
((((long)in.get(221 + inPos)) >> 2) & 63L)
| // [76543210]
// [_____________________________________________32109876______]
((((long)in.get(222 + inPos)) << 6) & 16383L)
| // [76543210]
// [_____________________________________10987654______________]
((((long)in.get(223 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_____________________________98765432______________________]
((((long)in.get(224 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_____________________76543210______________________________]
((((long)in.get(225 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_____________54321098______________________________________]
((((long)in.get(226 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_____32109876______________________________________________]
((((long)in.get(227 + inPos)) << 46) & 18014398509481983L)
| // [___43210]
// [87654______________________________________________________]
((((long)in.get(228 + inPos)) << 54) & 576460752303423487L);
out[31 + outPos] =
// [765_____]
// [________________________________________________________210]
((((long)in.get(228 + inPos)) >> 5) & 7L)
| // [76543210]
// [________________________________________________09876543___]
((((long)in.get(229 + inPos)) << 3) & 2047L)
| // [76543210]
// [________________________________________87654321___________]
((((long)in.get(230 + inPos)) << 11) & 524287L)
| // [76543210]
// [________________________________65432109___________________]
((((long)in.get(231 + inPos)) << 19) & 134217727L)
| // [76543210]
// [________________________43210987___________________________]
((((long)in.get(232 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [________________21098765___________________________________]
((((long)in.get(233 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [________09876543___________________________________________]
((((long)in.get(234 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [87654321___________________________________________________]
((((long)in.get(235 + inPos)) << 51) & 576460752303423487L);
}
}
private static final class Packer60 extends BytePackerForLong {
private Packer60() {
super(60);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 0 + inPos] & 1152921504606846975L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 1 + inPos] & 1152921504606846975L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 1 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 2 + inPos] & 1152921504606846975L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 3 + inPos] & 1152921504606846975L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 3 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 4 + inPos] & 1152921504606846975L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 5 + inPos] & 1152921504606846975L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 5 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 6 + inPos] & 1152921504606846975L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 7 + inPos] & 1152921504606846975L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 7 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 52)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 0 + inPos] & 1152921504606846975L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 0 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 1 + inPos] & 1152921504606846975L) << 4)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 1 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 1 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 2 + inPos] & 1152921504606846975L))) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[22 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 2 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 3 + inPos] & 1152921504606846975L) << 4)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 3 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 3 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 4 + inPos] & 1152921504606846975L))) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[37 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 4 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 5 + inPos] & 1152921504606846975L) << 4)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 5 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 5 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 6 + inPos] & 1152921504606846975L))) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[52 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 6 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 7 + inPos] & 1152921504606846975L) << 4)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 7 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 7 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[ 8 + inPos] & 1152921504606846975L))) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[67 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[ 8 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[ 9 + inPos] & 1152921504606846975L) << 4)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[ 9 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[ 9 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[10 + inPos] & 1152921504606846975L))) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[10 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[10 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[10 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[10 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[10 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[10 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[82 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[10 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[11 + inPos] & 1152921504606846975L) << 4)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[11 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[11 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[11 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[11 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[11 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[11 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[11 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[12 + inPos] & 1152921504606846975L))) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[12 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[12 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[12 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[12 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[12 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[12 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[97 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[12 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[13 + inPos] & 1152921504606846975L) << 4)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[13 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[13 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[13 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[13 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[13 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[13 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[13 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[14 + inPos] & 1152921504606846975L))) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[14 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[14 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[14 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[14 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[14 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[14 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[112 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[14 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[15 + inPos] & 1152921504606846975L) << 4)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[15 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[15 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[15 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[15 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[15 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[15 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[15 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[16 + inPos] & 1152921504606846975L))) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[16 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[16 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[16 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[16 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[16 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[16 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[127 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[16 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[17 + inPos] & 1152921504606846975L) << 4)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[17 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[17 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[17 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[17 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[17 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[17 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[17 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[18 + inPos] & 1152921504606846975L))) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[18 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[18 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[18 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[18 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[18 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[18 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[142 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[18 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[19 + inPos] & 1152921504606846975L) << 4)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[19 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[19 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[19 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[19 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[19 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[19 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[19 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[20 + inPos] & 1152921504606846975L))) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[20 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[20 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[20 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[20 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[20 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[20 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[157 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[20 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[21 + inPos] & 1152921504606846975L) << 4)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[21 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[21 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[21 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[21 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[21 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[21 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[21 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[22 + inPos] & 1152921504606846975L))) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[22 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[22 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[22 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[22 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[22 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[22 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[172 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[22 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[23 + inPos] & 1152921504606846975L) << 4)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[23 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[23 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[23 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[23 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[23 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[23 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[23 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[24 + inPos] & 1152921504606846975L))) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[24 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[24 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[24 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[24 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[24 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[24 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[187 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[24 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[25 + inPos] & 1152921504606846975L) << 4)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[25 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[25 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[25 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[25 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[25 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[25 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[25 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[26 + inPos] & 1152921504606846975L))) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[26 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[26 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[26 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[26 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[26 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[26 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[202 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[26 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[27 + inPos] & 1152921504606846975L) << 4)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[27 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[27 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[27 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[27 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[27 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[27 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[27 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[28 + inPos] & 1152921504606846975L))) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[28 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[28 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[28 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[28 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[28 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[28 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[217 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[28 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[29 + inPos] & 1152921504606846975L) << 4)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[29 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[29 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[29 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[29 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[29 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[29 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[29 + inPos] & 1152921504606846975L) >>> 52)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [____________________________________________________76543210]
((in[30 + inPos] & 1152921504606846975L))) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [____________________________________________54321098________]
((in[30 + inPos] & 1152921504606846975L) >>> 8)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [____________________________________32109876________________]
((in[30 + inPos] & 1152921504606846975L) >>> 16)) & 255);
out[228 + outPos] = (byte)((
// [76543210]
// [____________________________10987654________________________]
((in[30 + inPos] & 1152921504606846975L) >>> 24)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [____________________98765432________________________________]
((in[30 + inPos] & 1152921504606846975L) >>> 32)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [____________76543210________________________________________]
((in[30 + inPos] & 1152921504606846975L) >>> 40)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [____54321098________________________________________________]
((in[30 + inPos] & 1152921504606846975L) >>> 48)) & 255);
out[232 + outPos] = (byte)((
// [____3210]
// [9876________________________________________________________]
((in[30 + inPos] & 1152921504606846975L) >>> 56)
| // [7654____]
// [________________________________________________________3210]
((in[31 + inPos] & 1152921504606846975L) << 4)) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [________________________________________________10987654____]
((in[31 + inPos] & 1152921504606846975L) >>> 4)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [________________________________________98765432____________]
((in[31 + inPos] & 1152921504606846975L) >>> 12)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [________________________________76543210____________________]
((in[31 + inPos] & 1152921504606846975L) >>> 20)) & 255);
out[236 + outPos] = (byte)((
// [76543210]
// [________________________54321098____________________________]
((in[31 + inPos] & 1152921504606846975L) >>> 28)) & 255);
out[237 + outPos] = (byte)((
// [76543210]
// [________________32109876____________________________________]
((in[31 + inPos] & 1152921504606846975L) >>> 36)) & 255);
out[238 + outPos] = (byte)((
// [76543210]
// [________10987654____________________________________________]
((in[31 + inPos] & 1152921504606846975L) >>> 44)) & 255);
out[239 + outPos] = (byte)((
// [76543210]
// [98765432____________________________________________________]
((in[31 + inPos] & 1152921504606846975L) >>> 52)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 1152921504606846975L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[10 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[11 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[12 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[13 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[14 + inPos]) << 52) & 1152921504606846975L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[18 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[19 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[20 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[21 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[22 + inPos]) << 56) & 1152921504606846975L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[27 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[28 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[29 + inPos]) << 52) & 1152921504606846975L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[35 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[36 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[37 + inPos]) << 56) & 1152921504606846975L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[40 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[41 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[42 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[43 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[44 + inPos]) << 52) & 1152921504606846975L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[48 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[49 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[50 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[51 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[52 + inPos]) << 56) & 1152921504606846975L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[56 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[57 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[58 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[59 + inPos]) << 52) & 1152921504606846975L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 1152921504606846975L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(10 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(11 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(12 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(13 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(14 + inPos)) << 52) & 1152921504606846975L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(18 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(19 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(20 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(21 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(22 + inPos)) << 56) & 1152921504606846975L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(27 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(28 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(29 + inPos)) << 52) & 1152921504606846975L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(35 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(36 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(37 + inPos)) << 56) & 1152921504606846975L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(40 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(41 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(42 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(43 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(44 + inPos)) << 52) & 1152921504606846975L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(48 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(49 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(50 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(51 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(52 + inPos)) << 56) & 1152921504606846975L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(56 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(57 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(58 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(59 + inPos)) << 52) & 1152921504606846975L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 1152921504606846975L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[ 7 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[ 8 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[ 9 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[10 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[11 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[12 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[13 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[14 + inPos]) << 52) & 1152921504606846975L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[15 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[16 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[17 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[18 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[19 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[20 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[21 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[22 + inPos]) << 56) & 1152921504606846975L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[22 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[23 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[24 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[25 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[26 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[27 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[28 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[29 + inPos]) << 52) & 1152921504606846975L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[30 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[31 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[32 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[33 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[34 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[35 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[36 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[37 + inPos]) << 56) & 1152921504606846975L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[37 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[38 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[39 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[40 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[41 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[42 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[43 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[44 + inPos]) << 52) & 1152921504606846975L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[45 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[46 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[47 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[48 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[49 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[50 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[51 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[52 + inPos]) << 56) & 1152921504606846975L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[52 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[53 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[54 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[55 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[56 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[57 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[58 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[59 + inPos]) << 52) & 1152921504606846975L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[60 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[61 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[62 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[63 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[64 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[65 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[66 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[67 + inPos]) << 56) & 1152921504606846975L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[67 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[68 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[69 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[70 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[71 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[72 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[73 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[74 + inPos]) << 52) & 1152921504606846975L);
out[10 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[75 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[76 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[77 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[78 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[79 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[80 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[81 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[82 + inPos]) << 56) & 1152921504606846975L);
out[11 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[82 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[83 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[84 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[85 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[86 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[87 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[88 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[89 + inPos]) << 52) & 1152921504606846975L);
out[12 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[90 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[91 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[92 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[93 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[94 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[95 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[96 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[97 + inPos]) << 56) & 1152921504606846975L);
out[13 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[97 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[98 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[99 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[100 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[101 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[102 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[103 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[104 + inPos]) << 52) & 1152921504606846975L);
out[14 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[105 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[106 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[107 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[108 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[109 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[110 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[111 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[112 + inPos]) << 56) & 1152921504606846975L);
out[15 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[112 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[113 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[114 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[115 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[116 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[117 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[118 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[119 + inPos]) << 52) & 1152921504606846975L);
out[16 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[120 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[121 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[122 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[123 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[124 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[125 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[126 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[127 + inPos]) << 56) & 1152921504606846975L);
out[17 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[127 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[128 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[129 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[130 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[131 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[132 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[133 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[134 + inPos]) << 52) & 1152921504606846975L);
out[18 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[135 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[136 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[137 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[138 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[139 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[140 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[141 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[142 + inPos]) << 56) & 1152921504606846975L);
out[19 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[142 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[143 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[144 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[145 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[146 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[147 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[148 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[149 + inPos]) << 52) & 1152921504606846975L);
out[20 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[150 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[151 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[152 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[153 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[154 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[155 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[156 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[157 + inPos]) << 56) & 1152921504606846975L);
out[21 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[157 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[158 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[159 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[160 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[161 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[162 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[163 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[164 + inPos]) << 52) & 1152921504606846975L);
out[22 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[165 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[166 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[167 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[168 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[169 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[170 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[171 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[172 + inPos]) << 56) & 1152921504606846975L);
out[23 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[172 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[173 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[174 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[175 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[176 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[177 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[178 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[179 + inPos]) << 52) & 1152921504606846975L);
out[24 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[180 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[181 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[182 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[183 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[184 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[185 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[186 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[187 + inPos]) << 56) & 1152921504606846975L);
out[25 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[187 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[188 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[189 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[190 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[191 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[192 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[193 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[194 + inPos]) << 52) & 1152921504606846975L);
out[26 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[195 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[196 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[197 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[198 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[199 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[200 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[201 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[202 + inPos]) << 56) & 1152921504606846975L);
out[27 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[202 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[203 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[204 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[205 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[206 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[207 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[208 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[209 + inPos]) << 52) & 1152921504606846975L);
out[28 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[210 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[211 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[212 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[213 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[214 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[215 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[216 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[217 + inPos]) << 56) & 1152921504606846975L);
out[29 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[217 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[218 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[219 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[220 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[221 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[222 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[223 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[224 + inPos]) << 52) & 1152921504606846975L);
out[30 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in[225 + inPos]) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in[226 + inPos]) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in[227 + inPos]) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in[228 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in[229 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in[230 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in[231 + inPos]) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in[232 + inPos]) << 56) & 1152921504606846975L);
out[31 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in[232 + inPos]) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in[233 + inPos]) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in[234 + inPos]) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in[235 + inPos]) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in[236 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in[237 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in[238 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in[239 + inPos]) << 52) & 1152921504606846975L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 1152921504606846975L);
out[ 1 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get( 7 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get( 8 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get( 9 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(10 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(11 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(12 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(13 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(14 + inPos)) << 52) & 1152921504606846975L);
out[ 2 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(15 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(16 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(17 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(18 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(19 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(20 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(21 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(22 + inPos)) << 56) & 1152921504606846975L);
out[ 3 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(22 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(23 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(24 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(25 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(26 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(27 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(28 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(29 + inPos)) << 52) & 1152921504606846975L);
out[ 4 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(30 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(31 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(32 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(33 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(34 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(35 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(36 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(37 + inPos)) << 56) & 1152921504606846975L);
out[ 5 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(37 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(38 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(39 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(40 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(41 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(42 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(43 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(44 + inPos)) << 52) & 1152921504606846975L);
out[ 6 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(45 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(46 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(47 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(48 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(49 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(50 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(51 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(52 + inPos)) << 56) & 1152921504606846975L);
out[ 7 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(52 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(53 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(54 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(55 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(56 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(57 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(58 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(59 + inPos)) << 52) & 1152921504606846975L);
out[ 8 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(60 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(61 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(62 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(63 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(64 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(65 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(66 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(67 + inPos)) << 56) & 1152921504606846975L);
out[ 9 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(67 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(68 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(69 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(70 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(71 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(72 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(73 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(74 + inPos)) << 52) & 1152921504606846975L);
out[10 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(75 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(76 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(77 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(78 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(79 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(80 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(81 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(82 + inPos)) << 56) & 1152921504606846975L);
out[11 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(82 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(83 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(84 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(85 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(86 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(87 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(88 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(89 + inPos)) << 52) & 1152921504606846975L);
out[12 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(90 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(91 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(92 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(93 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(94 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(95 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(96 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(97 + inPos)) << 56) & 1152921504606846975L);
out[13 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(97 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(98 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(99 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(100 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(101 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(102 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(103 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(104 + inPos)) << 52) & 1152921504606846975L);
out[14 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(105 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(106 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(107 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(108 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(109 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(110 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(111 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(112 + inPos)) << 56) & 1152921504606846975L);
out[15 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(112 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(113 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(114 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(115 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(116 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(117 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(118 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(119 + inPos)) << 52) & 1152921504606846975L);
out[16 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(120 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(121 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(122 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(123 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(124 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(125 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(126 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(127 + inPos)) << 56) & 1152921504606846975L);
out[17 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(127 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(128 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(129 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(130 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(131 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(132 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(133 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(134 + inPos)) << 52) & 1152921504606846975L);
out[18 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(135 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(136 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(137 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(138 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(139 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(140 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(141 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(142 + inPos)) << 56) & 1152921504606846975L);
out[19 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(142 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(143 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(144 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(145 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(146 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(147 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(148 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(149 + inPos)) << 52) & 1152921504606846975L);
out[20 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(150 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(151 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(152 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(153 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(154 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(155 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(156 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(157 + inPos)) << 56) & 1152921504606846975L);
out[21 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(157 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(158 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(159 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(160 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(161 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(162 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(163 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(164 + inPos)) << 52) & 1152921504606846975L);
out[22 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(165 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(166 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(167 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(168 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(169 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(170 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(171 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(172 + inPos)) << 56) & 1152921504606846975L);
out[23 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(172 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(173 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(174 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(175 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(176 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(177 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(178 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(179 + inPos)) << 52) & 1152921504606846975L);
out[24 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(180 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(181 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(182 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(183 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(184 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(185 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(186 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(187 + inPos)) << 56) & 1152921504606846975L);
out[25 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(187 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(188 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(189 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(190 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(191 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(192 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(193 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(194 + inPos)) << 52) & 1152921504606846975L);
out[26 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(195 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(196 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(197 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(198 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(199 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(200 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(201 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(202 + inPos)) << 56) & 1152921504606846975L);
out[27 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(202 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(203 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(204 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(205 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(206 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(207 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(208 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(209 + inPos)) << 52) & 1152921504606846975L);
out[28 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(210 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(211 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(212 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(213 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(214 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(215 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(216 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(217 + inPos)) << 56) & 1152921504606846975L);
out[29 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(217 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(218 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(219 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(220 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(221 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(222 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(223 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(224 + inPos)) << 52) & 1152921504606846975L);
out[30 + outPos] =
// [76543210]
// [____________________________________________________76543210]
((((long)in.get(225 + inPos)) ) & 255L)
| // [76543210]
// [____________________________________________54321098________]
((((long)in.get(226 + inPos)) << 8) & 65535L)
| // [76543210]
// [____________________________________32109876________________]
((((long)in.get(227 + inPos)) << 16) & 16777215L)
| // [76543210]
// [____________________________10987654________________________]
((((long)in.get(228 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [____________________98765432________________________________]
((((long)in.get(229 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [____________76543210________________________________________]
((((long)in.get(230 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [____54321098________________________________________________]
((((long)in.get(231 + inPos)) << 48) & 72057594037927935L)
| // [____3210]
// [9876________________________________________________________]
((((long)in.get(232 + inPos)) << 56) & 1152921504606846975L);
out[31 + outPos] =
// [7654____]
// [________________________________________________________3210]
((((long)in.get(232 + inPos)) >> 4) & 15L)
| // [76543210]
// [________________________________________________10987654____]
((((long)in.get(233 + inPos)) << 4) & 4095L)
| // [76543210]
// [________________________________________98765432____________]
((((long)in.get(234 + inPos)) << 12) & 1048575L)
| // [76543210]
// [________________________________76543210____________________]
((((long)in.get(235 + inPos)) << 20) & 268435455L)
| // [76543210]
// [________________________54321098____________________________]
((((long)in.get(236 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [________________32109876____________________________________]
((((long)in.get(237 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [________10987654____________________________________________]
((((long)in.get(238 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [98765432____________________________________________________]
((((long)in.get(239 + inPos)) << 52) & 1152921504606846975L);
}
}
private static final class Packer61 extends BytePackerForLong {
private Packer61() {
super(61);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________76543210]
((in[ 0 + inPos] & 2305843009213693951L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________________________54321098________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____________________98765432________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_____________76543210________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_____54321098________________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [___43210]
// [09876________________________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 56)
| // [765_____]
// [__________________________________________________________210]
((in[ 1 + inPos] & 2305843009213693951L) << 5)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________________________09876543___]
((in[ 1 + inPos] & 2305843009213693951L) >>> 3)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321___________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 11)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109___________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 19)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________________43210987___________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 27)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________________21098765___________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 35)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________09876543___________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 43)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__87654321___________________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 51)) & 255);
out[15 + outPos] = (byte)((
// [______10]
// [09___________________________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 59)
| // [765432__]
// [_______________________________________________________543210]
((in[ 2 + inPos] & 2305843009213693951L) << 2)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_______________________________________________32109876______]
((in[ 2 + inPos] & 2305843009213693951L) >>> 6)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654______________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 14)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432______________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 22)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________________76543210______________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 30)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______________54321098______________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 38)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_______32109876______________________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 46)) & 255);
out[22 + outPos] = (byte)((
// [_6543210]
// [0987654______________________________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 54)
| // [7_______]
// [____________________________________________________________0]
((in[ 3 + inPos] & 2305843009213693951L) << 7)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________________________87654321_]
((in[ 3 + inPos] & 2305843009213693951L) >>> 1)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________________65432109_________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 9)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 17)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 25)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________09876543_________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 33)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________87654321_________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 41)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____65432109_________________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 49)) & 255);
out[30 + outPos] = (byte)((
// [____3210]
// [0987_________________________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 57)
| // [7654____]
// [_________________________________________________________3210]
((in[ 4 + inPos] & 2305843009213693951L) << 4)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________________________________________________10987654____]
((in[ 4 + inPos] & 2305843009213693951L) >>> 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432____________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 12)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210____________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 20)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_________________________54321098____________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 28)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_________________32109876____________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 36)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_________10987654____________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 44)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_98765432____________________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 52)) & 255);
out[38 + outPos] = (byte)((
// [_______0]
// [0____________________________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 60)
| // [7654321_]
// [______________________________________________________6543210]
((in[ 5 + inPos] & 2305843009213693951L) << 1)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________________________________43210987_______]
((in[ 5 + inPos] & 2305843009213693951L) >>> 7)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_______________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 15)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_______________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 23)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______________________87654321_______________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 31)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [______________65432109_______________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 39)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______43210987_______________________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 47)) & 255);
out[45 + outPos] = (byte)((
// [__543210]
// [098765_______________________________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 55)
| // [76______]
// [___________________________________________________________10]
((in[ 6 + inPos] & 2305843009213693951L) << 6)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [___________________________________________________98765432__]
((in[ 6 + inPos] & 2305843009213693951L) >>> 2)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210__________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 10)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098__________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 18)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [___________________________32109876__________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 26)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [___________________10987654__________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 34)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [___________98765432__________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 42)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [___76543210__________________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 50)) & 255);
out[53 + outPos] = (byte)((
// [_____210]
// [098__________________________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 58)
| // [76543___]
// [________________________________________________________43210]
((in[ 7 + inPos] & 2305843009213693951L) << 3)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________________________21098765_____]
((in[ 7 + inPos] & 2305843009213693951L) >>> 5)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543_____________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 13)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_____________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 21)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________65432109_____________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 29)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________43210987_____________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 37)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________21098765_____________________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 45)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [09876543_____________________________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 53)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________76543210]
((in[ 0 + inPos] & 2305843009213693951L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_____________________________________________54321098________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_____________________98765432________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_____________76543210________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_____54321098________________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [___43210]
// [09876________________________________________________________]
((in[ 0 + inPos] & 2305843009213693951L) >>> 56)
| // [765_____]
// [__________________________________________________________210]
((in[ 1 + inPos] & 2305843009213693951L) << 5)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [__________________________________________________09876543___]
((in[ 1 + inPos] & 2305843009213693951L) >>> 3)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321___________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 11)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109___________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 19)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [__________________________43210987___________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 27)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [__________________21098765___________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 35)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [__________09876543___________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 43)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [__87654321___________________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 51)) & 255);
out[15 + outPos] = (byte)((
// [______10]
// [09___________________________________________________________]
((in[ 1 + inPos] & 2305843009213693951L) >>> 59)
| // [765432__]
// [_______________________________________________________543210]
((in[ 2 + inPos] & 2305843009213693951L) << 2)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_______________________________________________32109876______]
((in[ 2 + inPos] & 2305843009213693951L) >>> 6)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654______________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 14)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432______________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 22)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_______________________76543210______________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 30)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_______________54321098______________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 38)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_______32109876______________________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 46)) & 255);
out[22 + outPos] = (byte)((
// [_6543210]
// [0987654______________________________________________________]
((in[ 2 + inPos] & 2305843009213693951L) >>> 54)
| // [7_______]
// [____________________________________________________________0]
((in[ 3 + inPos] & 2305843009213693951L) << 7)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [____________________________________________________87654321_]
((in[ 3 + inPos] & 2305843009213693951L) >>> 1)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________________65432109_________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 9)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 17)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 25)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________09876543_________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 33)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________87654321_________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 41)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____65432109_________________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 49)) & 255);
out[30 + outPos] = (byte)((
// [____3210]
// [0987_________________________________________________________]
((in[ 3 + inPos] & 2305843009213693951L) >>> 57)
| // [7654____]
// [_________________________________________________________3210]
((in[ 4 + inPos] & 2305843009213693951L) << 4)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [_________________________________________________10987654____]
((in[ 4 + inPos] & 2305843009213693951L) >>> 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432____________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 12)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210____________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 20)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [_________________________54321098____________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 28)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [_________________32109876____________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 36)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [_________10987654____________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 44)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [_98765432____________________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 52)) & 255);
out[38 + outPos] = (byte)((
// [_______0]
// [0____________________________________________________________]
((in[ 4 + inPos] & 2305843009213693951L) >>> 60)
| // [7654321_]
// [______________________________________________________6543210]
((in[ 5 + inPos] & 2305843009213693951L) << 1)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [______________________________________________43210987_______]
((in[ 5 + inPos] & 2305843009213693951L) >>> 7)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_______________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 15)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_______________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 23)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [______________________87654321_______________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 31)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [______________65432109_______________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 39)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [______43210987_______________________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 47)) & 255);
out[45 + outPos] = (byte)((
// [__543210]
// [098765_______________________________________________________]
((in[ 5 + inPos] & 2305843009213693951L) >>> 55)
| // [76______]
// [___________________________________________________________10]
((in[ 6 + inPos] & 2305843009213693951L) << 6)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [___________________________________________________98765432__]
((in[ 6 + inPos] & 2305843009213693951L) >>> 2)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210__________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 10)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098__________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 18)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [___________________________32109876__________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 26)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [___________________10987654__________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 34)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [___________98765432__________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 42)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [___76543210__________________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 50)) & 255);
out[53 + outPos] = (byte)((
// [_____210]
// [098__________________________________________________________]
((in[ 6 + inPos] & 2305843009213693951L) >>> 58)
| // [76543___]
// [________________________________________________________43210]
((in[ 7 + inPos] & 2305843009213693951L) << 3)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________________________________________________21098765_____]
((in[ 7 + inPos] & 2305843009213693951L) >>> 5)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543_____________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 13)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_____________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 21)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________65432109_____________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 29)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________43210987_____________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 37)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________21098765_____________________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 45)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [09876543_____________________________________________________]
((in[ 7 + inPos] & 2305843009213693951L) >>> 53)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________76543210]
((in[ 8 + inPos] & 2305843009213693951L))) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [_____________________________________________54321098________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 8)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 16)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654________________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 24)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_____________________98765432________________________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 32)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_____________76543210________________________________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 40)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_____54321098________________________________________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 48)) & 255);
out[68 + outPos] = (byte)((
// [___43210]
// [09876________________________________________________________]
((in[ 8 + inPos] & 2305843009213693951L) >>> 56)
| // [765_____]
// [__________________________________________________________210]
((in[ 9 + inPos] & 2305843009213693951L) << 5)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [__________________________________________________09876543___]
((in[ 9 + inPos] & 2305843009213693951L) >>> 3)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321___________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 11)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109___________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 19)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [__________________________43210987___________________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 27)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [__________________21098765___________________________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 35)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [__________09876543___________________________________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 43)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [__87654321___________________________________________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 51)) & 255);
out[76 + outPos] = (byte)((
// [______10]
// [09___________________________________________________________]
((in[ 9 + inPos] & 2305843009213693951L) >>> 59)
| // [765432__]
// [_______________________________________________________543210]
((in[10 + inPos] & 2305843009213693951L) << 2)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [_______________________________________________32109876______]
((in[10 + inPos] & 2305843009213693951L) >>> 6)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654______________]
((in[10 + inPos] & 2305843009213693951L) >>> 14)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432______________________]
((in[10 + inPos] & 2305843009213693951L) >>> 22)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_______________________76543210______________________________]
((in[10 + inPos] & 2305843009213693951L) >>> 30)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_______________54321098______________________________________]
((in[10 + inPos] & 2305843009213693951L) >>> 38)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [_______32109876______________________________________________]
((in[10 + inPos] & 2305843009213693951L) >>> 46)) & 255);
out[83 + outPos] = (byte)((
// [_6543210]
// [0987654______________________________________________________]
((in[10 + inPos] & 2305843009213693951L) >>> 54)
| // [7_______]
// [____________________________________________________________0]
((in[11 + inPos] & 2305843009213693951L) << 7)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [____________________________________________________87654321_]
((in[11 + inPos] & 2305843009213693951L) >>> 1)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [____________________________________________65432109_________]
((in[11 + inPos] & 2305843009213693951L) >>> 9)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_________________]
((in[11 + inPos] & 2305843009213693951L) >>> 17)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_________________________]
((in[11 + inPos] & 2305843009213693951L) >>> 25)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [____________________09876543_________________________________]
((in[11 + inPos] & 2305843009213693951L) >>> 33)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [____________87654321_________________________________________]
((in[11 + inPos] & 2305843009213693951L) >>> 41)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____65432109_________________________________________________]
((in[11 + inPos] & 2305843009213693951L) >>> 49)) & 255);
out[91 + outPos] = (byte)((
// [____3210]
// [0987_________________________________________________________]
((in[11 + inPos] & 2305843009213693951L) >>> 57)
| // [7654____]
// [_________________________________________________________3210]
((in[12 + inPos] & 2305843009213693951L) << 4)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [_________________________________________________10987654____]
((in[12 + inPos] & 2305843009213693951L) >>> 4)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432____________]
((in[12 + inPos] & 2305843009213693951L) >>> 12)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210____________________]
((in[12 + inPos] & 2305843009213693951L) >>> 20)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [_________________________54321098____________________________]
((in[12 + inPos] & 2305843009213693951L) >>> 28)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [_________________32109876____________________________________]
((in[12 + inPos] & 2305843009213693951L) >>> 36)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [_________10987654____________________________________________]
((in[12 + inPos] & 2305843009213693951L) >>> 44)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [_98765432____________________________________________________]
((in[12 + inPos] & 2305843009213693951L) >>> 52)) & 255);
out[99 + outPos] = (byte)((
// [_______0]
// [0____________________________________________________________]
((in[12 + inPos] & 2305843009213693951L) >>> 60)
| // [7654321_]
// [______________________________________________________6543210]
((in[13 + inPos] & 2305843009213693951L) << 1)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [______________________________________________43210987_______]
((in[13 + inPos] & 2305843009213693951L) >>> 7)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_______________]
((in[13 + inPos] & 2305843009213693951L) >>> 15)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_______________________]
((in[13 + inPos] & 2305843009213693951L) >>> 23)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [______________________87654321_______________________________]
((in[13 + inPos] & 2305843009213693951L) >>> 31)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [______________65432109_______________________________________]
((in[13 + inPos] & 2305843009213693951L) >>> 39)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [______43210987_______________________________________________]
((in[13 + inPos] & 2305843009213693951L) >>> 47)) & 255);
out[106 + outPos] = (byte)((
// [__543210]
// [098765_______________________________________________________]
((in[13 + inPos] & 2305843009213693951L) >>> 55)
| // [76______]
// [___________________________________________________________10]
((in[14 + inPos] & 2305843009213693951L) << 6)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [___________________________________________________98765432__]
((in[14 + inPos] & 2305843009213693951L) >>> 2)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210__________]
((in[14 + inPos] & 2305843009213693951L) >>> 10)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098__________________]
((in[14 + inPos] & 2305843009213693951L) >>> 18)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [___________________________32109876__________________________]
((in[14 + inPos] & 2305843009213693951L) >>> 26)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [___________________10987654__________________________________]
((in[14 + inPos] & 2305843009213693951L) >>> 34)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [___________98765432__________________________________________]
((in[14 + inPos] & 2305843009213693951L) >>> 42)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [___76543210__________________________________________________]
((in[14 + inPos] & 2305843009213693951L) >>> 50)) & 255);
out[114 + outPos] = (byte)((
// [_____210]
// [098__________________________________________________________]
((in[14 + inPos] & 2305843009213693951L) >>> 58)
| // [76543___]
// [________________________________________________________43210]
((in[15 + inPos] & 2305843009213693951L) << 3)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________________________________21098765_____]
((in[15 + inPos] & 2305843009213693951L) >>> 5)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543_____________]
((in[15 + inPos] & 2305843009213693951L) >>> 13)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_____________________]
((in[15 + inPos] & 2305843009213693951L) >>> 21)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________________________65432109_____________________________]
((in[15 + inPos] & 2305843009213693951L) >>> 29)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________43210987_____________________________________]
((in[15 + inPos] & 2305843009213693951L) >>> 37)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________21098765_____________________________________________]
((in[15 + inPos] & 2305843009213693951L) >>> 45)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [09876543_____________________________________________________]
((in[15 + inPos] & 2305843009213693951L) >>> 53)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________76543210]
((in[16 + inPos] & 2305843009213693951L))) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [_____________________________________________54321098________]
((in[16 + inPos] & 2305843009213693951L) >>> 8)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876________________]
((in[16 + inPos] & 2305843009213693951L) >>> 16)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654________________________]
((in[16 + inPos] & 2305843009213693951L) >>> 24)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_____________________98765432________________________________]
((in[16 + inPos] & 2305843009213693951L) >>> 32)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_____________76543210________________________________________]
((in[16 + inPos] & 2305843009213693951L) >>> 40)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [_____54321098________________________________________________]
((in[16 + inPos] & 2305843009213693951L) >>> 48)) & 255);
out[129 + outPos] = (byte)((
// [___43210]
// [09876________________________________________________________]
((in[16 + inPos] & 2305843009213693951L) >>> 56)
| // [765_____]
// [__________________________________________________________210]
((in[17 + inPos] & 2305843009213693951L) << 5)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [__________________________________________________09876543___]
((in[17 + inPos] & 2305843009213693951L) >>> 3)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321___________]
((in[17 + inPos] & 2305843009213693951L) >>> 11)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109___________________]
((in[17 + inPos] & 2305843009213693951L) >>> 19)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [__________________________43210987___________________________]
((in[17 + inPos] & 2305843009213693951L) >>> 27)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [__________________21098765___________________________________]
((in[17 + inPos] & 2305843009213693951L) >>> 35)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [__________09876543___________________________________________]
((in[17 + inPos] & 2305843009213693951L) >>> 43)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [__87654321___________________________________________________]
((in[17 + inPos] & 2305843009213693951L) >>> 51)) & 255);
out[137 + outPos] = (byte)((
// [______10]
// [09___________________________________________________________]
((in[17 + inPos] & 2305843009213693951L) >>> 59)
| // [765432__]
// [_______________________________________________________543210]
((in[18 + inPos] & 2305843009213693951L) << 2)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [_______________________________________________32109876______]
((in[18 + inPos] & 2305843009213693951L) >>> 6)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654______________]
((in[18 + inPos] & 2305843009213693951L) >>> 14)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432______________________]
((in[18 + inPos] & 2305843009213693951L) >>> 22)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [_______________________76543210______________________________]
((in[18 + inPos] & 2305843009213693951L) >>> 30)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [_______________54321098______________________________________]
((in[18 + inPos] & 2305843009213693951L) >>> 38)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_______32109876______________________________________________]
((in[18 + inPos] & 2305843009213693951L) >>> 46)) & 255);
out[144 + outPos] = (byte)((
// [_6543210]
// [0987654______________________________________________________]
((in[18 + inPos] & 2305843009213693951L) >>> 54)
| // [7_______]
// [____________________________________________________________0]
((in[19 + inPos] & 2305843009213693951L) << 7)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [____________________________________________________87654321_]
((in[19 + inPos] & 2305843009213693951L) >>> 1)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [____________________________________________65432109_________]
((in[19 + inPos] & 2305843009213693951L) >>> 9)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_________________]
((in[19 + inPos] & 2305843009213693951L) >>> 17)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_________________________]
((in[19 + inPos] & 2305843009213693951L) >>> 25)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [____________________09876543_________________________________]
((in[19 + inPos] & 2305843009213693951L) >>> 33)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [____________87654321_________________________________________]
((in[19 + inPos] & 2305843009213693951L) >>> 41)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [____65432109_________________________________________________]
((in[19 + inPos] & 2305843009213693951L) >>> 49)) & 255);
out[152 + outPos] = (byte)((
// [____3210]
// [0987_________________________________________________________]
((in[19 + inPos] & 2305843009213693951L) >>> 57)
| // [7654____]
// [_________________________________________________________3210]
((in[20 + inPos] & 2305843009213693951L) << 4)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [_________________________________________________10987654____]
((in[20 + inPos] & 2305843009213693951L) >>> 4)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432____________]
((in[20 + inPos] & 2305843009213693951L) >>> 12)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210____________________]
((in[20 + inPos] & 2305843009213693951L) >>> 20)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [_________________________54321098____________________________]
((in[20 + inPos] & 2305843009213693951L) >>> 28)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [_________________32109876____________________________________]
((in[20 + inPos] & 2305843009213693951L) >>> 36)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [_________10987654____________________________________________]
((in[20 + inPos] & 2305843009213693951L) >>> 44)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [_98765432____________________________________________________]
((in[20 + inPos] & 2305843009213693951L) >>> 52)) & 255);
out[160 + outPos] = (byte)((
// [_______0]
// [0____________________________________________________________]
((in[20 + inPos] & 2305843009213693951L) >>> 60)
| // [7654321_]
// [______________________________________________________6543210]
((in[21 + inPos] & 2305843009213693951L) << 1)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______________________________________________43210987_______]
((in[21 + inPos] & 2305843009213693951L) >>> 7)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_______________]
((in[21 + inPos] & 2305843009213693951L) >>> 15)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_______________________]
((in[21 + inPos] & 2305843009213693951L) >>> 23)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [______________________87654321_______________________________]
((in[21 + inPos] & 2305843009213693951L) >>> 31)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [______________65432109_______________________________________]
((in[21 + inPos] & 2305843009213693951L) >>> 39)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [______43210987_______________________________________________]
((in[21 + inPos] & 2305843009213693951L) >>> 47)) & 255);
out[167 + outPos] = (byte)((
// [__543210]
// [098765_______________________________________________________]
((in[21 + inPos] & 2305843009213693951L) >>> 55)
| // [76______]
// [___________________________________________________________10]
((in[22 + inPos] & 2305843009213693951L) << 6)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [___________________________________________________98765432__]
((in[22 + inPos] & 2305843009213693951L) >>> 2)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210__________]
((in[22 + inPos] & 2305843009213693951L) >>> 10)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098__________________]
((in[22 + inPos] & 2305843009213693951L) >>> 18)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [___________________________32109876__________________________]
((in[22 + inPos] & 2305843009213693951L) >>> 26)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [___________________10987654__________________________________]
((in[22 + inPos] & 2305843009213693951L) >>> 34)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [___________98765432__________________________________________]
((in[22 + inPos] & 2305843009213693951L) >>> 42)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [___76543210__________________________________________________]
((in[22 + inPos] & 2305843009213693951L) >>> 50)) & 255);
out[175 + outPos] = (byte)((
// [_____210]
// [098__________________________________________________________]
((in[22 + inPos] & 2305843009213693951L) >>> 58)
| // [76543___]
// [________________________________________________________43210]
((in[23 + inPos] & 2305843009213693951L) << 3)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________________________________21098765_____]
((in[23 + inPos] & 2305843009213693951L) >>> 5)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543_____________]
((in[23 + inPos] & 2305843009213693951L) >>> 13)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_____________________]
((in[23 + inPos] & 2305843009213693951L) >>> 21)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________________65432109_____________________________]
((in[23 + inPos] & 2305843009213693951L) >>> 29)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________________43210987_____________________________________]
((in[23 + inPos] & 2305843009213693951L) >>> 37)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [________21098765_____________________________________________]
((in[23 + inPos] & 2305843009213693951L) >>> 45)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [09876543_____________________________________________________]
((in[23 + inPos] & 2305843009213693951L) >>> 53)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________76543210]
((in[24 + inPos] & 2305843009213693951L))) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [_____________________________________________54321098________]
((in[24 + inPos] & 2305843009213693951L) >>> 8)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [_____________________________________32109876________________]
((in[24 + inPos] & 2305843009213693951L) >>> 16)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [_____________________________10987654________________________]
((in[24 + inPos] & 2305843009213693951L) >>> 24)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [_____________________98765432________________________________]
((in[24 + inPos] & 2305843009213693951L) >>> 32)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [_____________76543210________________________________________]
((in[24 + inPos] & 2305843009213693951L) >>> 40)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [_____54321098________________________________________________]
((in[24 + inPos] & 2305843009213693951L) >>> 48)) & 255);
out[190 + outPos] = (byte)((
// [___43210]
// [09876________________________________________________________]
((in[24 + inPos] & 2305843009213693951L) >>> 56)
| // [765_____]
// [__________________________________________________________210]
((in[25 + inPos] & 2305843009213693951L) << 5)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [__________________________________________________09876543___]
((in[25 + inPos] & 2305843009213693951L) >>> 3)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [__________________________________________87654321___________]
((in[25 + inPos] & 2305843009213693951L) >>> 11)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [__________________________________65432109___________________]
((in[25 + inPos] & 2305843009213693951L) >>> 19)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [__________________________43210987___________________________]
((in[25 + inPos] & 2305843009213693951L) >>> 27)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [__________________21098765___________________________________]
((in[25 + inPos] & 2305843009213693951L) >>> 35)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [__________09876543___________________________________________]
((in[25 + inPos] & 2305843009213693951L) >>> 43)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [__87654321___________________________________________________]
((in[25 + inPos] & 2305843009213693951L) >>> 51)) & 255);
out[198 + outPos] = (byte)((
// [______10]
// [09___________________________________________________________]
((in[25 + inPos] & 2305843009213693951L) >>> 59)
| // [765432__]
// [_______________________________________________________543210]
((in[26 + inPos] & 2305843009213693951L) << 2)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [_______________________________________________32109876______]
((in[26 + inPos] & 2305843009213693951L) >>> 6)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [_______________________________________10987654______________]
((in[26 + inPos] & 2305843009213693951L) >>> 14)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [_______________________________98765432______________________]
((in[26 + inPos] & 2305843009213693951L) >>> 22)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [_______________________76543210______________________________]
((in[26 + inPos] & 2305843009213693951L) >>> 30)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [_______________54321098______________________________________]
((in[26 + inPos] & 2305843009213693951L) >>> 38)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [_______32109876______________________________________________]
((in[26 + inPos] & 2305843009213693951L) >>> 46)) & 255);
out[205 + outPos] = (byte)((
// [_6543210]
// [0987654______________________________________________________]
((in[26 + inPos] & 2305843009213693951L) >>> 54)
| // [7_______]
// [____________________________________________________________0]
((in[27 + inPos] & 2305843009213693951L) << 7)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [____________________________________________________87654321_]
((in[27 + inPos] & 2305843009213693951L) >>> 1)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [____________________________________________65432109_________]
((in[27 + inPos] & 2305843009213693951L) >>> 9)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [____________________________________43210987_________________]
((in[27 + inPos] & 2305843009213693951L) >>> 17)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [____________________________21098765_________________________]
((in[27 + inPos] & 2305843009213693951L) >>> 25)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [____________________09876543_________________________________]
((in[27 + inPos] & 2305843009213693951L) >>> 33)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [____________87654321_________________________________________]
((in[27 + inPos] & 2305843009213693951L) >>> 41)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [____65432109_________________________________________________]
((in[27 + inPos] & 2305843009213693951L) >>> 49)) & 255);
out[213 + outPos] = (byte)((
// [____3210]
// [0987_________________________________________________________]
((in[27 + inPos] & 2305843009213693951L) >>> 57)
| // [7654____]
// [_________________________________________________________3210]
((in[28 + inPos] & 2305843009213693951L) << 4)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [_________________________________________________10987654____]
((in[28 + inPos] & 2305843009213693951L) >>> 4)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [_________________________________________98765432____________]
((in[28 + inPos] & 2305843009213693951L) >>> 12)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [_________________________________76543210____________________]
((in[28 + inPos] & 2305843009213693951L) >>> 20)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [_________________________54321098____________________________]
((in[28 + inPos] & 2305843009213693951L) >>> 28)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [_________________32109876____________________________________]
((in[28 + inPos] & 2305843009213693951L) >>> 36)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [_________10987654____________________________________________]
((in[28 + inPos] & 2305843009213693951L) >>> 44)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [_98765432____________________________________________________]
((in[28 + inPos] & 2305843009213693951L) >>> 52)) & 255);
out[221 + outPos] = (byte)((
// [_______0]
// [0____________________________________________________________]
((in[28 + inPos] & 2305843009213693951L) >>> 60)
| // [7654321_]
// [______________________________________________________6543210]
((in[29 + inPos] & 2305843009213693951L) << 1)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [______________________________________________43210987_______]
((in[29 + inPos] & 2305843009213693951L) >>> 7)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [______________________________________21098765_______________]
((in[29 + inPos] & 2305843009213693951L) >>> 15)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [______________________________09876543_______________________]
((in[29 + inPos] & 2305843009213693951L) >>> 23)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [______________________87654321_______________________________]
((in[29 + inPos] & 2305843009213693951L) >>> 31)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [______________65432109_______________________________________]
((in[29 + inPos] & 2305843009213693951L) >>> 39)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [______43210987_______________________________________________]
((in[29 + inPos] & 2305843009213693951L) >>> 47)) & 255);
out[228 + outPos] = (byte)((
// [__543210]
// [098765_______________________________________________________]
((in[29 + inPos] & 2305843009213693951L) >>> 55)
| // [76______]
// [___________________________________________________________10]
((in[30 + inPos] & 2305843009213693951L) << 6)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [___________________________________________________98765432__]
((in[30 + inPos] & 2305843009213693951L) >>> 2)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [___________________________________________76543210__________]
((in[30 + inPos] & 2305843009213693951L) >>> 10)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [___________________________________54321098__________________]
((in[30 + inPos] & 2305843009213693951L) >>> 18)) & 255);
out[232 + outPos] = (byte)((
// [76543210]
// [___________________________32109876__________________________]
((in[30 + inPos] & 2305843009213693951L) >>> 26)) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [___________________10987654__________________________________]
((in[30 + inPos] & 2305843009213693951L) >>> 34)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [___________98765432__________________________________________]
((in[30 + inPos] & 2305843009213693951L) >>> 42)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [___76543210__________________________________________________]
((in[30 + inPos] & 2305843009213693951L) >>> 50)) & 255);
out[236 + outPos] = (byte)((
// [_____210]
// [098__________________________________________________________]
((in[30 + inPos] & 2305843009213693951L) >>> 58)
| // [76543___]
// [________________________________________________________43210]
((in[31 + inPos] & 2305843009213693951L) << 3)) & 255);
out[237 + outPos] = (byte)((
// [76543210]
// [________________________________________________21098765_____]
((in[31 + inPos] & 2305843009213693951L) >>> 5)) & 255);
out[238 + outPos] = (byte)((
// [76543210]
// [________________________________________09876543_____________]
((in[31 + inPos] & 2305843009213693951L) >>> 13)) & 255);
out[239 + outPos] = (byte)((
// [76543210]
// [________________________________87654321_____________________]
((in[31 + inPos] & 2305843009213693951L) >>> 21)) & 255);
out[240 + outPos] = (byte)((
// [76543210]
// [________________________65432109_____________________________]
((in[31 + inPos] & 2305843009213693951L) >>> 29)) & 255);
out[241 + outPos] = (byte)((
// [76543210]
// [________________43210987_____________________________________]
((in[31 + inPos] & 2305843009213693951L) >>> 37)) & 255);
out[242 + outPos] = (byte)((
// [76543210]
// [________21098765_____________________________________________]
((in[31 + inPos] & 2305843009213693951L) >>> 45)) & 255);
out[243 + outPos] = (byte)((
// [76543210]
// [09876543_____________________________________________________]
((in[31 + inPos] & 2305843009213693951L) >>> 53)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 2305843009213693951L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in[ 7 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in[ 8 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in[ 9 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in[10 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in[11 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in[12 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in[13 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in[14 + inPos]) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in[15 + inPos]) << 59) & 2305843009213693951L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in[15 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in[16 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in[17 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in[18 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in[19 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in[20 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in[21 + inPos]) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in[22 + inPos]) << 54) & 2305843009213693951L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in[22 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in[23 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in[24 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in[25 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in[26 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in[27 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in[28 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in[29 + inPos]) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in[30 + inPos]) << 57) & 2305843009213693951L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in[30 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in[31 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in[32 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in[33 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in[34 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in[35 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in[36 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in[37 + inPos]) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in[38 + inPos]) << 60) & 2305843009213693951L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in[38 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in[39 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in[40 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in[41 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in[42 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in[43 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in[44 + inPos]) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in[45 + inPos]) << 55) & 2305843009213693951L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in[45 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in[46 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in[47 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in[48 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in[49 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in[50 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in[51 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in[52 + inPos]) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in[53 + inPos]) << 58) & 2305843009213693951L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in[53 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in[54 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in[55 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in[56 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in[57 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in[58 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in[59 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in[60 + inPos]) << 53) & 2305843009213693951L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 2305843009213693951L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in.get( 7 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in.get( 8 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in.get( 9 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in.get(10 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in.get(11 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in.get(12 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in.get(13 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in.get(14 + inPos)) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in.get(15 + inPos)) << 59) & 2305843009213693951L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in.get(15 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in.get(16 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in.get(17 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in.get(18 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in.get(19 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in.get(20 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in.get(21 + inPos)) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in.get(22 + inPos)) << 54) & 2305843009213693951L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in.get(22 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in.get(23 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in.get(24 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in.get(25 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in.get(26 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in.get(27 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in.get(28 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in.get(29 + inPos)) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in.get(30 + inPos)) << 57) & 2305843009213693951L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in.get(30 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in.get(31 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in.get(32 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in.get(33 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in.get(34 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in.get(35 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in.get(36 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in.get(37 + inPos)) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in.get(38 + inPos)) << 60) & 2305843009213693951L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in.get(38 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in.get(39 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in.get(40 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in.get(41 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in.get(42 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in.get(43 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in.get(44 + inPos)) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in.get(45 + inPos)) << 55) & 2305843009213693951L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in.get(45 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in.get(46 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in.get(47 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in.get(48 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in.get(49 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in.get(50 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in.get(51 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in.get(52 + inPos)) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in.get(53 + inPos)) << 58) & 2305843009213693951L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in.get(53 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in.get(54 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in.get(55 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in.get(56 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in.get(57 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in.get(58 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in.get(59 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in.get(60 + inPos)) << 53) & 2305843009213693951L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 2305843009213693951L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in[ 7 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in[ 8 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in[ 9 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in[10 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in[11 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in[12 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in[13 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in[14 + inPos]) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in[15 + inPos]) << 59) & 2305843009213693951L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in[15 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in[16 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in[17 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in[18 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in[19 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in[20 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in[21 + inPos]) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in[22 + inPos]) << 54) & 2305843009213693951L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in[22 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in[23 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in[24 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in[25 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in[26 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in[27 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in[28 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in[29 + inPos]) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in[30 + inPos]) << 57) & 2305843009213693951L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in[30 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in[31 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in[32 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in[33 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in[34 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in[35 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in[36 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in[37 + inPos]) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in[38 + inPos]) << 60) & 2305843009213693951L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in[38 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in[39 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in[40 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in[41 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in[42 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in[43 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in[44 + inPos]) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in[45 + inPos]) << 55) & 2305843009213693951L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in[45 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in[46 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in[47 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in[48 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in[49 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in[50 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in[51 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in[52 + inPos]) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in[53 + inPos]) << 58) & 2305843009213693951L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in[53 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in[54 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in[55 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in[56 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in[57 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in[58 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in[59 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in[60 + inPos]) << 53) & 2305843009213693951L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in[61 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in[62 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in[63 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in[64 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in[65 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in[66 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in[67 + inPos]) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in[68 + inPos]) << 56) & 2305843009213693951L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in[68 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in[69 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in[70 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in[71 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in[72 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in[73 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in[74 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in[75 + inPos]) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in[76 + inPos]) << 59) & 2305843009213693951L);
out[10 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in[76 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in[77 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in[78 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in[79 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in[80 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in[81 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in[82 + inPos]) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in[83 + inPos]) << 54) & 2305843009213693951L);
out[11 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in[83 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in[84 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in[85 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in[86 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in[87 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in[88 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in[89 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in[90 + inPos]) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in[91 + inPos]) << 57) & 2305843009213693951L);
out[12 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in[91 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in[92 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in[93 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in[94 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in[95 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in[96 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in[97 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in[98 + inPos]) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in[99 + inPos]) << 60) & 2305843009213693951L);
out[13 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in[99 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in[100 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in[101 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in[102 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in[103 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in[104 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in[105 + inPos]) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in[106 + inPos]) << 55) & 2305843009213693951L);
out[14 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in[106 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in[107 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in[108 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in[109 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in[110 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in[111 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in[112 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in[113 + inPos]) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in[114 + inPos]) << 58) & 2305843009213693951L);
out[15 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in[114 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in[115 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in[116 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in[117 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in[118 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in[119 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in[120 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in[121 + inPos]) << 53) & 2305843009213693951L);
out[16 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in[122 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in[123 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in[124 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in[125 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in[126 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in[127 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in[128 + inPos]) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in[129 + inPos]) << 56) & 2305843009213693951L);
out[17 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in[129 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in[130 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in[131 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in[132 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in[133 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in[134 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in[135 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in[136 + inPos]) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in[137 + inPos]) << 59) & 2305843009213693951L);
out[18 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in[137 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in[138 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in[139 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in[140 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in[141 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in[142 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in[143 + inPos]) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in[144 + inPos]) << 54) & 2305843009213693951L);
out[19 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in[144 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in[145 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in[146 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in[147 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in[148 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in[149 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in[150 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in[151 + inPos]) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in[152 + inPos]) << 57) & 2305843009213693951L);
out[20 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in[152 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in[153 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in[154 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in[155 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in[156 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in[157 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in[158 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in[159 + inPos]) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in[160 + inPos]) << 60) & 2305843009213693951L);
out[21 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in[160 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in[161 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in[162 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in[163 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in[164 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in[165 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in[166 + inPos]) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in[167 + inPos]) << 55) & 2305843009213693951L);
out[22 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in[167 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in[168 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in[169 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in[170 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in[171 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in[172 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in[173 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in[174 + inPos]) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in[175 + inPos]) << 58) & 2305843009213693951L);
out[23 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in[175 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in[176 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in[177 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in[178 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in[179 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in[180 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in[181 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in[182 + inPos]) << 53) & 2305843009213693951L);
out[24 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in[183 + inPos]) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in[184 + inPos]) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in[185 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in[186 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in[187 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in[188 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in[189 + inPos]) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in[190 + inPos]) << 56) & 2305843009213693951L);
out[25 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in[190 + inPos]) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in[191 + inPos]) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in[192 + inPos]) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in[193 + inPos]) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in[194 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in[195 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in[196 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in[197 + inPos]) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in[198 + inPos]) << 59) & 2305843009213693951L);
out[26 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in[198 + inPos]) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in[199 + inPos]) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in[200 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in[201 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in[202 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in[203 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in[204 + inPos]) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in[205 + inPos]) << 54) & 2305843009213693951L);
out[27 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in[205 + inPos]) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in[206 + inPos]) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in[207 + inPos]) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in[208 + inPos]) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in[209 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in[210 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in[211 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in[212 + inPos]) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in[213 + inPos]) << 57) & 2305843009213693951L);
out[28 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in[213 + inPos]) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in[214 + inPos]) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in[215 + inPos]) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in[216 + inPos]) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in[217 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in[218 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in[219 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in[220 + inPos]) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in[221 + inPos]) << 60) & 2305843009213693951L);
out[29 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in[221 + inPos]) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in[222 + inPos]) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in[223 + inPos]) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in[224 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in[225 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in[226 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in[227 + inPos]) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in[228 + inPos]) << 55) & 2305843009213693951L);
out[30 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in[228 + inPos]) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in[229 + inPos]) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in[230 + inPos]) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in[231 + inPos]) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in[232 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in[233 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in[234 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in[235 + inPos]) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in[236 + inPos]) << 58) & 2305843009213693951L);
out[31 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in[236 + inPos]) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in[237 + inPos]) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in[238 + inPos]) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in[239 + inPos]) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in[240 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in[241 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in[242 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in[243 + inPos]) << 53) & 2305843009213693951L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 2305843009213693951L);
out[ 1 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in.get( 7 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in.get( 8 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in.get( 9 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in.get(10 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in.get(11 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in.get(12 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in.get(13 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in.get(14 + inPos)) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in.get(15 + inPos)) << 59) & 2305843009213693951L);
out[ 2 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in.get(15 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in.get(16 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in.get(17 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in.get(18 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in.get(19 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in.get(20 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in.get(21 + inPos)) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in.get(22 + inPos)) << 54) & 2305843009213693951L);
out[ 3 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in.get(22 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in.get(23 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in.get(24 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in.get(25 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in.get(26 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in.get(27 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in.get(28 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in.get(29 + inPos)) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in.get(30 + inPos)) << 57) & 2305843009213693951L);
out[ 4 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in.get(30 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in.get(31 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in.get(32 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in.get(33 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in.get(34 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in.get(35 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in.get(36 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in.get(37 + inPos)) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in.get(38 + inPos)) << 60) & 2305843009213693951L);
out[ 5 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in.get(38 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in.get(39 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in.get(40 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in.get(41 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in.get(42 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in.get(43 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in.get(44 + inPos)) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in.get(45 + inPos)) << 55) & 2305843009213693951L);
out[ 6 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in.get(45 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in.get(46 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in.get(47 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in.get(48 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in.get(49 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in.get(50 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in.get(51 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in.get(52 + inPos)) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in.get(53 + inPos)) << 58) & 2305843009213693951L);
out[ 7 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in.get(53 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in.get(54 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in.get(55 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in.get(56 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in.get(57 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in.get(58 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in.get(59 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in.get(60 + inPos)) << 53) & 2305843009213693951L);
out[ 8 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in.get(61 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in.get(62 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in.get(63 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in.get(64 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in.get(65 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in.get(66 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in.get(67 + inPos)) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in.get(68 + inPos)) << 56) & 2305843009213693951L);
out[ 9 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in.get(68 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in.get(69 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in.get(70 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in.get(71 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in.get(72 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in.get(73 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in.get(74 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in.get(75 + inPos)) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in.get(76 + inPos)) << 59) & 2305843009213693951L);
out[10 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in.get(76 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in.get(77 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in.get(78 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in.get(79 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in.get(80 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in.get(81 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in.get(82 + inPos)) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in.get(83 + inPos)) << 54) & 2305843009213693951L);
out[11 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in.get(83 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in.get(84 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in.get(85 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in.get(86 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in.get(87 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in.get(88 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in.get(89 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in.get(90 + inPos)) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in.get(91 + inPos)) << 57) & 2305843009213693951L);
out[12 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in.get(91 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in.get(92 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in.get(93 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in.get(94 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in.get(95 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in.get(96 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in.get(97 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in.get(98 + inPos)) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in.get(99 + inPos)) << 60) & 2305843009213693951L);
out[13 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in.get(99 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in.get(100 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in.get(101 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in.get(102 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in.get(103 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in.get(104 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in.get(105 + inPos)) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in.get(106 + inPos)) << 55) & 2305843009213693951L);
out[14 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in.get(106 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in.get(107 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in.get(108 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in.get(109 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in.get(110 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in.get(111 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in.get(112 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in.get(113 + inPos)) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in.get(114 + inPos)) << 58) & 2305843009213693951L);
out[15 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in.get(114 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in.get(115 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in.get(116 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in.get(117 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in.get(118 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in.get(119 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in.get(120 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in.get(121 + inPos)) << 53) & 2305843009213693951L);
out[16 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in.get(122 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in.get(123 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in.get(124 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in.get(125 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in.get(126 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in.get(127 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in.get(128 + inPos)) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in.get(129 + inPos)) << 56) & 2305843009213693951L);
out[17 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in.get(129 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in.get(130 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in.get(131 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in.get(132 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in.get(133 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in.get(134 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in.get(135 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in.get(136 + inPos)) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in.get(137 + inPos)) << 59) & 2305843009213693951L);
out[18 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in.get(137 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in.get(138 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in.get(139 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in.get(140 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in.get(141 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in.get(142 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in.get(143 + inPos)) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in.get(144 + inPos)) << 54) & 2305843009213693951L);
out[19 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in.get(144 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in.get(145 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in.get(146 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in.get(147 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in.get(148 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in.get(149 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in.get(150 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in.get(151 + inPos)) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in.get(152 + inPos)) << 57) & 2305843009213693951L);
out[20 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in.get(152 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in.get(153 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in.get(154 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in.get(155 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in.get(156 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in.get(157 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in.get(158 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in.get(159 + inPos)) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in.get(160 + inPos)) << 60) & 2305843009213693951L);
out[21 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in.get(160 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in.get(161 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in.get(162 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in.get(163 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in.get(164 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in.get(165 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in.get(166 + inPos)) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in.get(167 + inPos)) << 55) & 2305843009213693951L);
out[22 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in.get(167 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in.get(168 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in.get(169 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in.get(170 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in.get(171 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in.get(172 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in.get(173 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in.get(174 + inPos)) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in.get(175 + inPos)) << 58) & 2305843009213693951L);
out[23 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in.get(175 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in.get(176 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in.get(177 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in.get(178 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in.get(179 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in.get(180 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in.get(181 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in.get(182 + inPos)) << 53) & 2305843009213693951L);
out[24 + outPos] =
// [76543210]
// [_____________________________________________________76543210]
((((long)in.get(183 + inPos)) ) & 255L)
| // [76543210]
// [_____________________________________________54321098________]
((((long)in.get(184 + inPos)) << 8) & 65535L)
| // [76543210]
// [_____________________________________32109876________________]
((((long)in.get(185 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_____________________________10987654________________________]
((((long)in.get(186 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_____________________98765432________________________________]
((((long)in.get(187 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_____________76543210________________________________________]
((((long)in.get(188 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_____54321098________________________________________________]
((((long)in.get(189 + inPos)) << 48) & 72057594037927935L)
| // [___43210]
// [09876________________________________________________________]
((((long)in.get(190 + inPos)) << 56) & 2305843009213693951L);
out[25 + outPos] =
// [765_____]
// [__________________________________________________________210]
((((long)in.get(190 + inPos)) >> 5) & 7L)
| // [76543210]
// [__________________________________________________09876543___]
((((long)in.get(191 + inPos)) << 3) & 2047L)
| // [76543210]
// [__________________________________________87654321___________]
((((long)in.get(192 + inPos)) << 11) & 524287L)
| // [76543210]
// [__________________________________65432109___________________]
((((long)in.get(193 + inPos)) << 19) & 134217727L)
| // [76543210]
// [__________________________43210987___________________________]
((((long)in.get(194 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [__________________21098765___________________________________]
((((long)in.get(195 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [__________09876543___________________________________________]
((((long)in.get(196 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [__87654321___________________________________________________]
((((long)in.get(197 + inPos)) << 51) & 576460752303423487L)
| // [______10]
// [09___________________________________________________________]
((((long)in.get(198 + inPos)) << 59) & 2305843009213693951L);
out[26 + outPos] =
// [765432__]
// [_______________________________________________________543210]
((((long)in.get(198 + inPos)) >> 2) & 63L)
| // [76543210]
// [_______________________________________________32109876______]
((((long)in.get(199 + inPos)) << 6) & 16383L)
| // [76543210]
// [_______________________________________10987654______________]
((((long)in.get(200 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_______________________________98765432______________________]
((((long)in.get(201 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_______________________76543210______________________________]
((((long)in.get(202 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_______________54321098______________________________________]
((((long)in.get(203 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_______32109876______________________________________________]
((((long)in.get(204 + inPos)) << 46) & 18014398509481983L)
| // [_6543210]
// [0987654______________________________________________________]
((((long)in.get(205 + inPos)) << 54) & 2305843009213693951L);
out[27 + outPos] =
// [7_______]
// [____________________________________________________________0]
((((long)in.get(205 + inPos)) >> 7) & 1L)
| // [76543210]
// [____________________________________________________87654321_]
((((long)in.get(206 + inPos)) << 1) & 511L)
| // [76543210]
// [____________________________________________65432109_________]
((((long)in.get(207 + inPos)) << 9) & 131071L)
| // [76543210]
// [____________________________________43210987_________________]
((((long)in.get(208 + inPos)) << 17) & 33554431L)
| // [76543210]
// [____________________________21098765_________________________]
((((long)in.get(209 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [____________________09876543_________________________________]
((((long)in.get(210 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [____________87654321_________________________________________]
((((long)in.get(211 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [____65432109_________________________________________________]
((((long)in.get(212 + inPos)) << 49) & 144115188075855871L)
| // [____3210]
// [0987_________________________________________________________]
((((long)in.get(213 + inPos)) << 57) & 2305843009213693951L);
out[28 + outPos] =
// [7654____]
// [_________________________________________________________3210]
((((long)in.get(213 + inPos)) >> 4) & 15L)
| // [76543210]
// [_________________________________________________10987654____]
((((long)in.get(214 + inPos)) << 4) & 4095L)
| // [76543210]
// [_________________________________________98765432____________]
((((long)in.get(215 + inPos)) << 12) & 1048575L)
| // [76543210]
// [_________________________________76543210____________________]
((((long)in.get(216 + inPos)) << 20) & 268435455L)
| // [76543210]
// [_________________________54321098____________________________]
((((long)in.get(217 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [_________________32109876____________________________________]
((((long)in.get(218 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [_________10987654____________________________________________]
((((long)in.get(219 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [_98765432____________________________________________________]
((((long)in.get(220 + inPos)) << 52) & 1152921504606846975L)
| // [_______0]
// [0____________________________________________________________]
((((long)in.get(221 + inPos)) << 60) & 2305843009213693951L);
out[29 + outPos] =
// [7654321_]
// [______________________________________________________6543210]
((((long)in.get(221 + inPos)) >> 1) & 127L)
| // [76543210]
// [______________________________________________43210987_______]
((((long)in.get(222 + inPos)) << 7) & 32767L)
| // [76543210]
// [______________________________________21098765_______________]
((((long)in.get(223 + inPos)) << 15) & 8388607L)
| // [76543210]
// [______________________________09876543_______________________]
((((long)in.get(224 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [______________________87654321_______________________________]
((((long)in.get(225 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [______________65432109_______________________________________]
((((long)in.get(226 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [______43210987_______________________________________________]
((((long)in.get(227 + inPos)) << 47) & 36028797018963967L)
| // [__543210]
// [098765_______________________________________________________]
((((long)in.get(228 + inPos)) << 55) & 2305843009213693951L);
out[30 + outPos] =
// [76______]
// [___________________________________________________________10]
((((long)in.get(228 + inPos)) >> 6) & 3L)
| // [76543210]
// [___________________________________________________98765432__]
((((long)in.get(229 + inPos)) << 2) & 1023L)
| // [76543210]
// [___________________________________________76543210__________]
((((long)in.get(230 + inPos)) << 10) & 262143L)
| // [76543210]
// [___________________________________54321098__________________]
((((long)in.get(231 + inPos)) << 18) & 67108863L)
| // [76543210]
// [___________________________32109876__________________________]
((((long)in.get(232 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [___________________10987654__________________________________]
((((long)in.get(233 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [___________98765432__________________________________________]
((((long)in.get(234 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [___76543210__________________________________________________]
((((long)in.get(235 + inPos)) << 50) & 288230376151711743L)
| // [_____210]
// [098__________________________________________________________]
((((long)in.get(236 + inPos)) << 58) & 2305843009213693951L);
out[31 + outPos] =
// [76543___]
// [________________________________________________________43210]
((((long)in.get(236 + inPos)) >> 3) & 31L)
| // [76543210]
// [________________________________________________21098765_____]
((((long)in.get(237 + inPos)) << 5) & 8191L)
| // [76543210]
// [________________________________________09876543_____________]
((((long)in.get(238 + inPos)) << 13) & 2097151L)
| // [76543210]
// [________________________________87654321_____________________]
((((long)in.get(239 + inPos)) << 21) & 536870911L)
| // [76543210]
// [________________________65432109_____________________________]
((((long)in.get(240 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [________________43210987_____________________________________]
((((long)in.get(241 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [________21098765_____________________________________________]
((((long)in.get(242 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [09876543_____________________________________________________]
((((long)in.get(243 + inPos)) << 53) & 2305843009213693951L);
}
}
private static final class Packer62 extends BytePackerForLong {
private Packer62() {
super(62);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[ 0 + inPos] & 4611686018427387903L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[ 1 + inPos] & 4611686018427387903L) << 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[ 1 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[15 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[ 2 + inPos] & 4611686018427387903L) << 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[ 2 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[23 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[ 3 + inPos] & 4611686018427387903L) << 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[ 3 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[ 4 + inPos] & 4611686018427387903L))) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[38 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[ 5 + inPos] & 4611686018427387903L) << 6)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[ 5 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[46 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[ 6 + inPos] & 4611686018427387903L) << 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[ 6 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[54 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[ 7 + inPos] & 4611686018427387903L) << 2)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[ 7 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 54)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[ 0 + inPos] & 4611686018427387903L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[ 0 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[ 1 + inPos] & 4611686018427387903L) << 6)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[ 1 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[15 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[ 1 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[ 2 + inPos] & 4611686018427387903L) << 4)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[ 2 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[23 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[ 2 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[ 3 + inPos] & 4611686018427387903L) << 2)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[ 3 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[ 3 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[ 4 + inPos] & 4611686018427387903L))) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[38 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[ 4 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[ 5 + inPos] & 4611686018427387903L) << 6)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[ 5 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[46 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[ 5 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[ 6 + inPos] & 4611686018427387903L) << 4)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[ 6 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[54 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[ 6 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[ 7 + inPos] & 4611686018427387903L) << 2)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[ 7 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[ 7 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[ 8 + inPos] & 4611686018427387903L))) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[69 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[ 8 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[ 9 + inPos] & 4611686018427387903L) << 6)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[ 9 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[77 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[ 9 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[10 + inPos] & 4611686018427387903L) << 4)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[10 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[10 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[10 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[10 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[10 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[10 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[10 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[85 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[10 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[11 + inPos] & 4611686018427387903L) << 2)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[11 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[11 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[11 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[11 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[11 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[11 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[11 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[12 + inPos] & 4611686018427387903L))) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[12 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[12 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[12 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[12 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[12 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[12 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[100 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[12 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[13 + inPos] & 4611686018427387903L) << 6)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[13 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[13 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[13 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[13 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[13 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[13 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[13 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[108 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[13 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[14 + inPos] & 4611686018427387903L) << 4)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[14 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[14 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[14 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[14 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[14 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[14 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[14 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[116 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[14 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[15 + inPos] & 4611686018427387903L) << 2)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[15 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[15 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[15 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[15 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[15 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[15 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[15 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[16 + inPos] & 4611686018427387903L))) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[16 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[16 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[16 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[16 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[16 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[16 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[131 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[16 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[17 + inPos] & 4611686018427387903L) << 6)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[17 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[17 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[17 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[17 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[17 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[17 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[17 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[139 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[17 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[18 + inPos] & 4611686018427387903L) << 4)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[18 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[18 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[18 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[18 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[18 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[18 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[18 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[147 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[18 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[19 + inPos] & 4611686018427387903L) << 2)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[19 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[19 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[19 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[19 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[19 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[19 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[19 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[20 + inPos] & 4611686018427387903L))) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[20 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[20 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[20 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[20 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[20 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[20 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[162 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[20 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[21 + inPos] & 4611686018427387903L) << 6)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[21 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[21 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[21 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[21 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[21 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[21 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[21 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[170 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[21 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[22 + inPos] & 4611686018427387903L) << 4)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[22 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[22 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[22 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[22 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[22 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[22 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[22 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[178 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[22 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[23 + inPos] & 4611686018427387903L) << 2)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[23 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[23 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[23 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[23 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[23 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[23 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[23 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[24 + inPos] & 4611686018427387903L))) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[24 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[24 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[24 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[24 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[24 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[24 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[193 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[24 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[25 + inPos] & 4611686018427387903L) << 6)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[25 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[25 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[25 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[25 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[25 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[25 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[25 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[201 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[25 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[26 + inPos] & 4611686018427387903L) << 4)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[26 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[26 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[26 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[26 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[26 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[26 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[26 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[209 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[26 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[27 + inPos] & 4611686018427387903L) << 2)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[27 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[27 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[27 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[27 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[27 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[27 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[27 + inPos] & 4611686018427387903L) >>> 54)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [______________________________________________________76543210]
((in[28 + inPos] & 4611686018427387903L))) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [______________________________________________54321098________]
((in[28 + inPos] & 4611686018427387903L) >>> 8)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [______________________________________32109876________________]
((in[28 + inPos] & 4611686018427387903L) >>> 16)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [______________________________10987654________________________]
((in[28 + inPos] & 4611686018427387903L) >>> 24)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [______________________98765432________________________________]
((in[28 + inPos] & 4611686018427387903L) >>> 32)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [______________76543210________________________________________]
((in[28 + inPos] & 4611686018427387903L) >>> 40)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [______54321098________________________________________________]
((in[28 + inPos] & 4611686018427387903L) >>> 48)) & 255);
out[224 + outPos] = (byte)((
// [__543210]
// [109876________________________________________________________]
((in[28 + inPos] & 4611686018427387903L) >>> 56)
| // [76______]
// [____________________________________________________________10]
((in[29 + inPos] & 4611686018427387903L) << 6)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [____________________________________________________98765432__]
((in[29 + inPos] & 4611686018427387903L) >>> 2)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [____________________________________________76543210__________]
((in[29 + inPos] & 4611686018427387903L) >>> 10)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [____________________________________54321098__________________]
((in[29 + inPos] & 4611686018427387903L) >>> 18)) & 255);
out[228 + outPos] = (byte)((
// [76543210]
// [____________________________32109876__________________________]
((in[29 + inPos] & 4611686018427387903L) >>> 26)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [____________________10987654__________________________________]
((in[29 + inPos] & 4611686018427387903L) >>> 34)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [____________98765432__________________________________________]
((in[29 + inPos] & 4611686018427387903L) >>> 42)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [____76543210__________________________________________________]
((in[29 + inPos] & 4611686018427387903L) >>> 50)) & 255);
out[232 + outPos] = (byte)((
// [____3210]
// [1098__________________________________________________________]
((in[29 + inPos] & 4611686018427387903L) >>> 58)
| // [7654____]
// [__________________________________________________________3210]
((in[30 + inPos] & 4611686018427387903L) << 4)) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [__________________________________________________10987654____]
((in[30 + inPos] & 4611686018427387903L) >>> 4)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [__________________________________________98765432____________]
((in[30 + inPos] & 4611686018427387903L) >>> 12)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [__________________________________76543210____________________]
((in[30 + inPos] & 4611686018427387903L) >>> 20)) & 255);
out[236 + outPos] = (byte)((
// [76543210]
// [__________________________54321098____________________________]
((in[30 + inPos] & 4611686018427387903L) >>> 28)) & 255);
out[237 + outPos] = (byte)((
// [76543210]
// [__________________32109876____________________________________]
((in[30 + inPos] & 4611686018427387903L) >>> 36)) & 255);
out[238 + outPos] = (byte)((
// [76543210]
// [__________10987654____________________________________________]
((in[30 + inPos] & 4611686018427387903L) >>> 44)) & 255);
out[239 + outPos] = (byte)((
// [76543210]
// [__98765432____________________________________________________]
((in[30 + inPos] & 4611686018427387903L) >>> 52)) & 255);
out[240 + outPos] = (byte)((
// [______10]
// [10____________________________________________________________]
((in[30 + inPos] & 4611686018427387903L) >>> 60)
| // [765432__]
// [________________________________________________________543210]
((in[31 + inPos] & 4611686018427387903L) << 2)) & 255);
out[241 + outPos] = (byte)((
// [76543210]
// [________________________________________________32109876______]
((in[31 + inPos] & 4611686018427387903L) >>> 6)) & 255);
out[242 + outPos] = (byte)((
// [76543210]
// [________________________________________10987654______________]
((in[31 + inPos] & 4611686018427387903L) >>> 14)) & 255);
out[243 + outPos] = (byte)((
// [76543210]
// [________________________________98765432______________________]
((in[31 + inPos] & 4611686018427387903L) >>> 22)) & 255);
out[244 + outPos] = (byte)((
// [76543210]
// [________________________76543210______________________________]
((in[31 + inPos] & 4611686018427387903L) >>> 30)) & 255);
out[245 + outPos] = (byte)((
// [76543210]
// [________________54321098______________________________________]
((in[31 + inPos] & 4611686018427387903L) >>> 38)) & 255);
out[246 + outPos] = (byte)((
// [76543210]
// [________32109876______________________________________________]
((in[31 + inPos] & 4611686018427387903L) >>> 46)) & 255);
out[247 + outPos] = (byte)((
// [76543210]
// [10987654______________________________________________________]
((in[31 + inPos] & 4611686018427387903L) >>> 54)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 4611686018427387903L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[ 7 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[ 8 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[ 9 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[10 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[11 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[12 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[13 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[14 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[15 + inPos]) << 58) & 4611686018427387903L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[15 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[16 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[17 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[18 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[19 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[20 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[21 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[22 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[23 + inPos]) << 60) & 4611686018427387903L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[23 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[24 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[25 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[26 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[27 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[28 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[29 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[30 + inPos]) << 54) & 4611686018427387903L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[31 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[32 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[33 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[34 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[35 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[36 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[37 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[38 + inPos]) << 56) & 4611686018427387903L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[38 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[39 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[40 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[41 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[42 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[43 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[44 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[45 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[46 + inPos]) << 58) & 4611686018427387903L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[46 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[47 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[48 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[49 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[50 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[51 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[52 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[53 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[54 + inPos]) << 60) & 4611686018427387903L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[54 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[55 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[56 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[57 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[58 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[59 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[60 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[61 + inPos]) << 54) & 4611686018427387903L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 4611686018427387903L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get( 7 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get( 8 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get( 9 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(10 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(11 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(12 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(13 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(14 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(15 + inPos)) << 58) & 4611686018427387903L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(15 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(16 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(17 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(18 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(19 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(20 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(21 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(22 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(23 + inPos)) << 60) & 4611686018427387903L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(23 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(24 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(25 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(26 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(27 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(28 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(29 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(30 + inPos)) << 54) & 4611686018427387903L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(31 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(32 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(33 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(34 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(35 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(36 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(37 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(38 + inPos)) << 56) & 4611686018427387903L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(38 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(39 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(40 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(41 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(42 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(43 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(44 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(45 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(46 + inPos)) << 58) & 4611686018427387903L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(46 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(47 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(48 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(49 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(50 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(51 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(52 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(53 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(54 + inPos)) << 60) & 4611686018427387903L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(54 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(55 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(56 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(57 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(58 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(59 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(60 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(61 + inPos)) << 54) & 4611686018427387903L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 4611686018427387903L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[ 7 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[ 8 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[ 9 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[10 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[11 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[12 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[13 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[14 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[15 + inPos]) << 58) & 4611686018427387903L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[15 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[16 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[17 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[18 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[19 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[20 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[21 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[22 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[23 + inPos]) << 60) & 4611686018427387903L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[23 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[24 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[25 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[26 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[27 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[28 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[29 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[30 + inPos]) << 54) & 4611686018427387903L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[31 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[32 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[33 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[34 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[35 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[36 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[37 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[38 + inPos]) << 56) & 4611686018427387903L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[38 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[39 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[40 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[41 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[42 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[43 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[44 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[45 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[46 + inPos]) << 58) & 4611686018427387903L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[46 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[47 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[48 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[49 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[50 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[51 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[52 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[53 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[54 + inPos]) << 60) & 4611686018427387903L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[54 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[55 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[56 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[57 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[58 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[59 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[60 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[61 + inPos]) << 54) & 4611686018427387903L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[62 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[63 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[64 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[65 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[66 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[67 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[68 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[69 + inPos]) << 56) & 4611686018427387903L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[69 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[70 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[71 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[72 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[73 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[74 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[75 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[76 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[77 + inPos]) << 58) & 4611686018427387903L);
out[10 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[77 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[78 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[79 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[80 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[81 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[82 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[83 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[84 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[85 + inPos]) << 60) & 4611686018427387903L);
out[11 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[85 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[86 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[87 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[88 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[89 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[90 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[91 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[92 + inPos]) << 54) & 4611686018427387903L);
out[12 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[93 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[94 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[95 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[96 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[97 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[98 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[99 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[100 + inPos]) << 56) & 4611686018427387903L);
out[13 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[100 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[101 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[102 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[103 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[104 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[105 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[106 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[107 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[108 + inPos]) << 58) & 4611686018427387903L);
out[14 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[108 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[109 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[110 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[111 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[112 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[113 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[114 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[115 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[116 + inPos]) << 60) & 4611686018427387903L);
out[15 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[116 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[117 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[118 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[119 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[120 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[121 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[122 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[123 + inPos]) << 54) & 4611686018427387903L);
out[16 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[124 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[125 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[126 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[127 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[128 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[129 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[130 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[131 + inPos]) << 56) & 4611686018427387903L);
out[17 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[131 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[132 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[133 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[134 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[135 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[136 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[137 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[138 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[139 + inPos]) << 58) & 4611686018427387903L);
out[18 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[139 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[140 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[141 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[142 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[143 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[144 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[145 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[146 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[147 + inPos]) << 60) & 4611686018427387903L);
out[19 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[147 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[148 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[149 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[150 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[151 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[152 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[153 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[154 + inPos]) << 54) & 4611686018427387903L);
out[20 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[155 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[156 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[157 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[158 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[159 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[160 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[161 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[162 + inPos]) << 56) & 4611686018427387903L);
out[21 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[162 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[163 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[164 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[165 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[166 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[167 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[168 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[169 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[170 + inPos]) << 58) & 4611686018427387903L);
out[22 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[170 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[171 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[172 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[173 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[174 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[175 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[176 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[177 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[178 + inPos]) << 60) & 4611686018427387903L);
out[23 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[178 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[179 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[180 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[181 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[182 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[183 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[184 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[185 + inPos]) << 54) & 4611686018427387903L);
out[24 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[186 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[187 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[188 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[189 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[190 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[191 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[192 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[193 + inPos]) << 56) & 4611686018427387903L);
out[25 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[193 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[194 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[195 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[196 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[197 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[198 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[199 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[200 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[201 + inPos]) << 58) & 4611686018427387903L);
out[26 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[201 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[202 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[203 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[204 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[205 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[206 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[207 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[208 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[209 + inPos]) << 60) & 4611686018427387903L);
out[27 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[209 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[210 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[211 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[212 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[213 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[214 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[215 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[216 + inPos]) << 54) & 4611686018427387903L);
out[28 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in[217 + inPos]) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in[218 + inPos]) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in[219 + inPos]) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in[220 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in[221 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in[222 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in[223 + inPos]) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in[224 + inPos]) << 56) & 4611686018427387903L);
out[29 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in[224 + inPos]) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in[225 + inPos]) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in[226 + inPos]) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in[227 + inPos]) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in[228 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in[229 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in[230 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in[231 + inPos]) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in[232 + inPos]) << 58) & 4611686018427387903L);
out[30 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in[232 + inPos]) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in[233 + inPos]) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in[234 + inPos]) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in[235 + inPos]) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in[236 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in[237 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in[238 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in[239 + inPos]) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in[240 + inPos]) << 60) & 4611686018427387903L);
out[31 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in[240 + inPos]) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in[241 + inPos]) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in[242 + inPos]) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in[243 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in[244 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in[245 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in[246 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in[247 + inPos]) << 54) & 4611686018427387903L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 4611686018427387903L);
out[ 1 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get( 7 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get( 8 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get( 9 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(10 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(11 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(12 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(13 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(14 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(15 + inPos)) << 58) & 4611686018427387903L);
out[ 2 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(15 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(16 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(17 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(18 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(19 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(20 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(21 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(22 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(23 + inPos)) << 60) & 4611686018427387903L);
out[ 3 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(23 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(24 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(25 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(26 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(27 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(28 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(29 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(30 + inPos)) << 54) & 4611686018427387903L);
out[ 4 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(31 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(32 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(33 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(34 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(35 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(36 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(37 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(38 + inPos)) << 56) & 4611686018427387903L);
out[ 5 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(38 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(39 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(40 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(41 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(42 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(43 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(44 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(45 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(46 + inPos)) << 58) & 4611686018427387903L);
out[ 6 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(46 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(47 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(48 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(49 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(50 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(51 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(52 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(53 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(54 + inPos)) << 60) & 4611686018427387903L);
out[ 7 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(54 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(55 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(56 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(57 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(58 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(59 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(60 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(61 + inPos)) << 54) & 4611686018427387903L);
out[ 8 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(62 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(63 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(64 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(65 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(66 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(67 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(68 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(69 + inPos)) << 56) & 4611686018427387903L);
out[ 9 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(69 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(70 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(71 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(72 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(73 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(74 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(75 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(76 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(77 + inPos)) << 58) & 4611686018427387903L);
out[10 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(77 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(78 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(79 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(80 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(81 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(82 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(83 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(84 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(85 + inPos)) << 60) & 4611686018427387903L);
out[11 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(85 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(86 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(87 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(88 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(89 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(90 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(91 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(92 + inPos)) << 54) & 4611686018427387903L);
out[12 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(93 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(94 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(95 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(96 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(97 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(98 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(99 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(100 + inPos)) << 56) & 4611686018427387903L);
out[13 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(100 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(101 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(102 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(103 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(104 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(105 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(106 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(107 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(108 + inPos)) << 58) & 4611686018427387903L);
out[14 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(108 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(109 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(110 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(111 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(112 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(113 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(114 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(115 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(116 + inPos)) << 60) & 4611686018427387903L);
out[15 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(116 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(117 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(118 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(119 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(120 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(121 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(122 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(123 + inPos)) << 54) & 4611686018427387903L);
out[16 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(124 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(125 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(126 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(127 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(128 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(129 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(130 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(131 + inPos)) << 56) & 4611686018427387903L);
out[17 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(131 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(132 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(133 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(134 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(135 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(136 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(137 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(138 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(139 + inPos)) << 58) & 4611686018427387903L);
out[18 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(139 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(140 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(141 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(142 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(143 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(144 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(145 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(146 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(147 + inPos)) << 60) & 4611686018427387903L);
out[19 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(147 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(148 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(149 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(150 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(151 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(152 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(153 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(154 + inPos)) << 54) & 4611686018427387903L);
out[20 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(155 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(156 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(157 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(158 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(159 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(160 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(161 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(162 + inPos)) << 56) & 4611686018427387903L);
out[21 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(162 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(163 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(164 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(165 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(166 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(167 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(168 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(169 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(170 + inPos)) << 58) & 4611686018427387903L);
out[22 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(170 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(171 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(172 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(173 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(174 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(175 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(176 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(177 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(178 + inPos)) << 60) & 4611686018427387903L);
out[23 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(178 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(179 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(180 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(181 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(182 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(183 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(184 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(185 + inPos)) << 54) & 4611686018427387903L);
out[24 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(186 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(187 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(188 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(189 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(190 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(191 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(192 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(193 + inPos)) << 56) & 4611686018427387903L);
out[25 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(193 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(194 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(195 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(196 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(197 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(198 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(199 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(200 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(201 + inPos)) << 58) & 4611686018427387903L);
out[26 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(201 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(202 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(203 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(204 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(205 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(206 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(207 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(208 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(209 + inPos)) << 60) & 4611686018427387903L);
out[27 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(209 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(210 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(211 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(212 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(213 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(214 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(215 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(216 + inPos)) << 54) & 4611686018427387903L);
out[28 + outPos] =
// [76543210]
// [______________________________________________________76543210]
((((long)in.get(217 + inPos)) ) & 255L)
| // [76543210]
// [______________________________________________54321098________]
((((long)in.get(218 + inPos)) << 8) & 65535L)
| // [76543210]
// [______________________________________32109876________________]
((((long)in.get(219 + inPos)) << 16) & 16777215L)
| // [76543210]
// [______________________________10987654________________________]
((((long)in.get(220 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [______________________98765432________________________________]
((((long)in.get(221 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [______________76543210________________________________________]
((((long)in.get(222 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [______54321098________________________________________________]
((((long)in.get(223 + inPos)) << 48) & 72057594037927935L)
| // [__543210]
// [109876________________________________________________________]
((((long)in.get(224 + inPos)) << 56) & 4611686018427387903L);
out[29 + outPos] =
// [76______]
// [____________________________________________________________10]
((((long)in.get(224 + inPos)) >> 6) & 3L)
| // [76543210]
// [____________________________________________________98765432__]
((((long)in.get(225 + inPos)) << 2) & 1023L)
| // [76543210]
// [____________________________________________76543210__________]
((((long)in.get(226 + inPos)) << 10) & 262143L)
| // [76543210]
// [____________________________________54321098__________________]
((((long)in.get(227 + inPos)) << 18) & 67108863L)
| // [76543210]
// [____________________________32109876__________________________]
((((long)in.get(228 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [____________________10987654__________________________________]
((((long)in.get(229 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [____________98765432__________________________________________]
((((long)in.get(230 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [____76543210__________________________________________________]
((((long)in.get(231 + inPos)) << 50) & 288230376151711743L)
| // [____3210]
// [1098__________________________________________________________]
((((long)in.get(232 + inPos)) << 58) & 4611686018427387903L);
out[30 + outPos] =
// [7654____]
// [__________________________________________________________3210]
((((long)in.get(232 + inPos)) >> 4) & 15L)
| // [76543210]
// [__________________________________________________10987654____]
((((long)in.get(233 + inPos)) << 4) & 4095L)
| // [76543210]
// [__________________________________________98765432____________]
((((long)in.get(234 + inPos)) << 12) & 1048575L)
| // [76543210]
// [__________________________________76543210____________________]
((((long)in.get(235 + inPos)) << 20) & 268435455L)
| // [76543210]
// [__________________________54321098____________________________]
((((long)in.get(236 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [__________________32109876____________________________________]
((((long)in.get(237 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [__________10987654____________________________________________]
((((long)in.get(238 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [__98765432____________________________________________________]
((((long)in.get(239 + inPos)) << 52) & 1152921504606846975L)
| // [______10]
// [10____________________________________________________________]
((((long)in.get(240 + inPos)) << 60) & 4611686018427387903L);
out[31 + outPos] =
// [765432__]
// [________________________________________________________543210]
((((long)in.get(240 + inPos)) >> 2) & 63L)
| // [76543210]
// [________________________________________________32109876______]
((((long)in.get(241 + inPos)) << 6) & 16383L)
| // [76543210]
// [________________________________________10987654______________]
((((long)in.get(242 + inPos)) << 14) & 4194303L)
| // [76543210]
// [________________________________98765432______________________]
((((long)in.get(243 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [________________________76543210______________________________]
((((long)in.get(244 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [________________54321098______________________________________]
((((long)in.get(245 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [________32109876______________________________________________]
((((long)in.get(246 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [10987654______________________________________________________]
((((long)in.get(247 + inPos)) << 54) & 4611686018427387903L);
}
}
private static final class Packer63 extends BytePackerForLong {
private Packer63() {
super(63);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________________________76543210]
((in[ 0 + inPos] & 9223372036854775807L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________________________54321098________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______________________98765432________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_______________76543210________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_______54321098________________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [2109876________________________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 56)
| // [7_______]
// [______________________________________________________________0]
((in[ 1 + inPos] & 9223372036854775807L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________________________87654321_]
((in[ 1 + inPos] & 9223372036854775807L) >>> 1)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________________________65432109_________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 9)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 17)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 25)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________________09876543_________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 33)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________87654321_________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 41)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______65432109_________________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 49)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [210987_________________________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 57)
| // [76______]
// [_____________________________________________________________10]
((in[ 2 + inPos] & 9223372036854775807L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________98765432__]
((in[ 2 + inPos] & 9223372036854775807L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210__________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098__________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 18)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876__________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 26)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_____________________10987654__________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 34)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________98765432__________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 42)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____76543210__________________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 50)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [21098__________________________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 58)
| // [765_____]
// [____________________________________________________________210]
((in[ 3 + inPos] & 9223372036854775807L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________________________09876543___]
((in[ 3 + inPos] & 9223372036854775807L) >>> 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321___________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 11)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109___________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 19)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________43210987___________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 27)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________21098765___________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 35)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________09876543___________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 43)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____87654321___________________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 51)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [2109___________________________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 59)
| // [7654____]
// [___________________________________________________________3210]
((in[ 4 + inPos] & 9223372036854775807L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [___________________________________________________10987654____]
((in[ 4 + inPos] & 9223372036854775807L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432____________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210____________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________________________54321098____________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 28)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___________________32109876____________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 36)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________10987654____________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 44)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___98765432____________________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 52)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [210____________________________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 60)
| // [76543___]
// [__________________________________________________________43210]
((in[ 5 + inPos] & 9223372036854775807L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__________________________________________________21098765_____]
((in[ 5 + inPos] & 9223372036854775807L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543_____________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_____________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 21)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_____________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 29)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________43210987_____________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 37)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________21098765_____________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 45)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__09876543_____________________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 53)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [21_____________________________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 61)
| // [765432__]
// [_________________________________________________________543210]
((in[ 6 + inPos] & 9223372036854775807L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_________________________________________________32109876______]
((in[ 6 + inPos] & 9223372036854775807L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654______________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432______________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 22)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_________________________76543210______________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 30)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_________________54321098______________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 38)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_________32109876______________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 46)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_10987654______________________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 54)) & 255);
out[55 + outPos] = (byte)((
// [_______0]
// [2______________________________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 62)
| // [7654321_]
// [________________________________________________________6543210]
((in[ 7 + inPos] & 9223372036854775807L) << 1)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________________43210987_______]
((in[ 7 + inPos] & 9223372036854775807L) >>> 7)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_______________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 15)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_______________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 23)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________87654321_______________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 31)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________65432109_______________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 39)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________43210987_______________________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 47)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [21098765_______________________________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 55)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [_______________________________________________________76543210]
((in[ 0 + inPos] & 9223372036854775807L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [_______________________________________________54321098________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [_______________________98765432________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [_______________76543210________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [_______54321098________________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [_6543210]
// [2109876________________________________________________________]
((in[ 0 + inPos] & 9223372036854775807L) >>> 56)
| // [7_______]
// [______________________________________________________________0]
((in[ 1 + inPos] & 9223372036854775807L) << 7)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [______________________________________________________87654321_]
((in[ 1 + inPos] & 9223372036854775807L) >>> 1)) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [______________________________________________65432109_________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 9)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 17)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 25)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [______________________09876543_________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 33)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [______________87654321_________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 41)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [______65432109_________________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 49)) & 255);
out[15 + outPos] = (byte)((
// [__543210]
// [210987_________________________________________________________]
((in[ 1 + inPos] & 9223372036854775807L) >>> 57)
| // [76______]
// [_____________________________________________________________10]
((in[ 2 + inPos] & 9223372036854775807L) << 6)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________98765432__]
((in[ 2 + inPos] & 9223372036854775807L) >>> 2)) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210__________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 10)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098__________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 18)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876__________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 26)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [_____________________10987654__________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 34)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [_____________98765432__________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 42)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [_____76543210__________________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 50)) & 255);
out[23 + outPos] = (byte)((
// [___43210]
// [21098__________________________________________________________]
((in[ 2 + inPos] & 9223372036854775807L) >>> 58)
| // [765_____]
// [____________________________________________________________210]
((in[ 3 + inPos] & 9223372036854775807L) << 5)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [____________________________________________________09876543___]
((in[ 3 + inPos] & 9223372036854775807L) >>> 3)) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321___________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 11)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109___________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 19)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [____________________________43210987___________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 27)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [____________________21098765___________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 35)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [____________09876543___________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 43)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [____87654321___________________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 51)) & 255);
out[31 + outPos] = (byte)((
// [____3210]
// [2109___________________________________________________________]
((in[ 3 + inPos] & 9223372036854775807L) >>> 59)
| // [7654____]
// [___________________________________________________________3210]
((in[ 4 + inPos] & 9223372036854775807L) << 4)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [___________________________________________________10987654____]
((in[ 4 + inPos] & 9223372036854775807L) >>> 4)) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432____________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 12)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210____________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 20)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [___________________________54321098____________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 28)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [___________________32109876____________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 36)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [___________10987654____________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 44)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [___98765432____________________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 52)) & 255);
out[39 + outPos] = (byte)((
// [_____210]
// [210____________________________________________________________]
((in[ 4 + inPos] & 9223372036854775807L) >>> 60)
| // [76543___]
// [__________________________________________________________43210]
((in[ 5 + inPos] & 9223372036854775807L) << 3)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [__________________________________________________21098765_____]
((in[ 5 + inPos] & 9223372036854775807L) >>> 5)) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543_____________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 13)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_____________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 21)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_____________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 29)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [__________________43210987_____________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 37)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [__________21098765_____________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 45)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [__09876543_____________________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 53)) & 255);
out[47 + outPos] = (byte)((
// [______10]
// [21_____________________________________________________________]
((in[ 5 + inPos] & 9223372036854775807L) >>> 61)
| // [765432__]
// [_________________________________________________________543210]
((in[ 6 + inPos] & 9223372036854775807L) << 2)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [_________________________________________________32109876______]
((in[ 6 + inPos] & 9223372036854775807L) >>> 6)) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654______________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 14)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432______________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 22)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [_________________________76543210______________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 30)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [_________________54321098______________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 38)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [_________32109876______________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 46)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [_10987654______________________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 54)) & 255);
out[55 + outPos] = (byte)((
// [_______0]
// [2______________________________________________________________]
((in[ 6 + inPos] & 9223372036854775807L) >>> 62)
| // [7654321_]
// [________________________________________________________6543210]
((in[ 7 + inPos] & 9223372036854775807L) << 1)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________________43210987_______]
((in[ 7 + inPos] & 9223372036854775807L) >>> 7)) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_______________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 15)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_______________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 23)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________87654321_______________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 31)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________65432109_______________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 39)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________43210987_______________________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 47)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [21098765_______________________________________________________]
((in[ 7 + inPos] & 9223372036854775807L) >>> 55)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [_______________________________________________________76543210]
((in[ 8 + inPos] & 9223372036854775807L))) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [_______________________________________________54321098________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 8)) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 16)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654________________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 24)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [_______________________98765432________________________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 32)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [_______________76543210________________________________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 40)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [_______54321098________________________________________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 48)) & 255);
out[70 + outPos] = (byte)((
// [_6543210]
// [2109876________________________________________________________]
((in[ 8 + inPos] & 9223372036854775807L) >>> 56)
| // [7_______]
// [______________________________________________________________0]
((in[ 9 + inPos] & 9223372036854775807L) << 7)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [______________________________________________________87654321_]
((in[ 9 + inPos] & 9223372036854775807L) >>> 1)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [______________________________________________65432109_________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 9)) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 17)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_________________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 25)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [______________________09876543_________________________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 33)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [______________87654321_________________________________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 41)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [______65432109_________________________________________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 49)) & 255);
out[78 + outPos] = (byte)((
// [__543210]
// [210987_________________________________________________________]
((in[ 9 + inPos] & 9223372036854775807L) >>> 57)
| // [76______]
// [_____________________________________________________________10]
((in[10 + inPos] & 9223372036854775807L) << 6)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________98765432__]
((in[10 + inPos] & 9223372036854775807L) >>> 2)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210__________]
((in[10 + inPos] & 9223372036854775807L) >>> 10)) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098__________________]
((in[10 + inPos] & 9223372036854775807L) >>> 18)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876__________________________]
((in[10 + inPos] & 9223372036854775807L) >>> 26)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [_____________________10987654__________________________________]
((in[10 + inPos] & 9223372036854775807L) >>> 34)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [_____________98765432__________________________________________]
((in[10 + inPos] & 9223372036854775807L) >>> 42)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [_____76543210__________________________________________________]
((in[10 + inPos] & 9223372036854775807L) >>> 50)) & 255);
out[86 + outPos] = (byte)((
// [___43210]
// [21098__________________________________________________________]
((in[10 + inPos] & 9223372036854775807L) >>> 58)
| // [765_____]
// [____________________________________________________________210]
((in[11 + inPos] & 9223372036854775807L) << 5)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [____________________________________________________09876543___]
((in[11 + inPos] & 9223372036854775807L) >>> 3)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321___________]
((in[11 + inPos] & 9223372036854775807L) >>> 11)) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109___________________]
((in[11 + inPos] & 9223372036854775807L) >>> 19)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [____________________________43210987___________________________]
((in[11 + inPos] & 9223372036854775807L) >>> 27)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [____________________21098765___________________________________]
((in[11 + inPos] & 9223372036854775807L) >>> 35)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [____________09876543___________________________________________]
((in[11 + inPos] & 9223372036854775807L) >>> 43)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [____87654321___________________________________________________]
((in[11 + inPos] & 9223372036854775807L) >>> 51)) & 255);
out[94 + outPos] = (byte)((
// [____3210]
// [2109___________________________________________________________]
((in[11 + inPos] & 9223372036854775807L) >>> 59)
| // [7654____]
// [___________________________________________________________3210]
((in[12 + inPos] & 9223372036854775807L) << 4)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [___________________________________________________10987654____]
((in[12 + inPos] & 9223372036854775807L) >>> 4)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432____________]
((in[12 + inPos] & 9223372036854775807L) >>> 12)) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210____________________]
((in[12 + inPos] & 9223372036854775807L) >>> 20)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [___________________________54321098____________________________]
((in[12 + inPos] & 9223372036854775807L) >>> 28)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [___________________32109876____________________________________]
((in[12 + inPos] & 9223372036854775807L) >>> 36)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [___________10987654____________________________________________]
((in[12 + inPos] & 9223372036854775807L) >>> 44)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [___98765432____________________________________________________]
((in[12 + inPos] & 9223372036854775807L) >>> 52)) & 255);
out[102 + outPos] = (byte)((
// [_____210]
// [210____________________________________________________________]
((in[12 + inPos] & 9223372036854775807L) >>> 60)
| // [76543___]
// [__________________________________________________________43210]
((in[13 + inPos] & 9223372036854775807L) << 3)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [__________________________________________________21098765_____]
((in[13 + inPos] & 9223372036854775807L) >>> 5)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543_____________]
((in[13 + inPos] & 9223372036854775807L) >>> 13)) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_____________________]
((in[13 + inPos] & 9223372036854775807L) >>> 21)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_____________________________]
((in[13 + inPos] & 9223372036854775807L) >>> 29)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [__________________43210987_____________________________________]
((in[13 + inPos] & 9223372036854775807L) >>> 37)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [__________21098765_____________________________________________]
((in[13 + inPos] & 9223372036854775807L) >>> 45)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [__09876543_____________________________________________________]
((in[13 + inPos] & 9223372036854775807L) >>> 53)) & 255);
out[110 + outPos] = (byte)((
// [______10]
// [21_____________________________________________________________]
((in[13 + inPos] & 9223372036854775807L) >>> 61)
| // [765432__]
// [_________________________________________________________543210]
((in[14 + inPos] & 9223372036854775807L) << 2)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [_________________________________________________32109876______]
((in[14 + inPos] & 9223372036854775807L) >>> 6)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654______________]
((in[14 + inPos] & 9223372036854775807L) >>> 14)) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432______________________]
((in[14 + inPos] & 9223372036854775807L) >>> 22)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [_________________________76543210______________________________]
((in[14 + inPos] & 9223372036854775807L) >>> 30)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [_________________54321098______________________________________]
((in[14 + inPos] & 9223372036854775807L) >>> 38)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [_________32109876______________________________________________]
((in[14 + inPos] & 9223372036854775807L) >>> 46)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [_10987654______________________________________________________]
((in[14 + inPos] & 9223372036854775807L) >>> 54)) & 255);
out[118 + outPos] = (byte)((
// [_______0]
// [2______________________________________________________________]
((in[14 + inPos] & 9223372036854775807L) >>> 62)
| // [7654321_]
// [________________________________________________________6543210]
((in[15 + inPos] & 9223372036854775807L) << 1)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [________________________________________________43210987_______]
((in[15 + inPos] & 9223372036854775807L) >>> 7)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_______________]
((in[15 + inPos] & 9223372036854775807L) >>> 15)) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_______________________]
((in[15 + inPos] & 9223372036854775807L) >>> 23)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________87654321_______________________________]
((in[15 + inPos] & 9223372036854775807L) >>> 31)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________65432109_______________________________________]
((in[15 + inPos] & 9223372036854775807L) >>> 39)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________43210987_______________________________________________]
((in[15 + inPos] & 9223372036854775807L) >>> 47)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [21098765_______________________________________________________]
((in[15 + inPos] & 9223372036854775807L) >>> 55)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [_______________________________________________________76543210]
((in[16 + inPos] & 9223372036854775807L))) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [_______________________________________________54321098________]
((in[16 + inPos] & 9223372036854775807L) >>> 8)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876________________]
((in[16 + inPos] & 9223372036854775807L) >>> 16)) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654________________________]
((in[16 + inPos] & 9223372036854775807L) >>> 24)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [_______________________98765432________________________________]
((in[16 + inPos] & 9223372036854775807L) >>> 32)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [_______________76543210________________________________________]
((in[16 + inPos] & 9223372036854775807L) >>> 40)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [_______54321098________________________________________________]
((in[16 + inPos] & 9223372036854775807L) >>> 48)) & 255);
out[133 + outPos] = (byte)((
// [_6543210]
// [2109876________________________________________________________]
((in[16 + inPos] & 9223372036854775807L) >>> 56)
| // [7_______]
// [______________________________________________________________0]
((in[17 + inPos] & 9223372036854775807L) << 7)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [______________________________________________________87654321_]
((in[17 + inPos] & 9223372036854775807L) >>> 1)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [______________________________________________65432109_________]
((in[17 + inPos] & 9223372036854775807L) >>> 9)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_________________]
((in[17 + inPos] & 9223372036854775807L) >>> 17)) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_________________________]
((in[17 + inPos] & 9223372036854775807L) >>> 25)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [______________________09876543_________________________________]
((in[17 + inPos] & 9223372036854775807L) >>> 33)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [______________87654321_________________________________________]
((in[17 + inPos] & 9223372036854775807L) >>> 41)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [______65432109_________________________________________________]
((in[17 + inPos] & 9223372036854775807L) >>> 49)) & 255);
out[141 + outPos] = (byte)((
// [__543210]
// [210987_________________________________________________________]
((in[17 + inPos] & 9223372036854775807L) >>> 57)
| // [76______]
// [_____________________________________________________________10]
((in[18 + inPos] & 9223372036854775807L) << 6)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________98765432__]
((in[18 + inPos] & 9223372036854775807L) >>> 2)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210__________]
((in[18 + inPos] & 9223372036854775807L) >>> 10)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098__________________]
((in[18 + inPos] & 9223372036854775807L) >>> 18)) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876__________________________]
((in[18 + inPos] & 9223372036854775807L) >>> 26)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [_____________________10987654__________________________________]
((in[18 + inPos] & 9223372036854775807L) >>> 34)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [_____________98765432__________________________________________]
((in[18 + inPos] & 9223372036854775807L) >>> 42)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [_____76543210__________________________________________________]
((in[18 + inPos] & 9223372036854775807L) >>> 50)) & 255);
out[149 + outPos] = (byte)((
// [___43210]
// [21098__________________________________________________________]
((in[18 + inPos] & 9223372036854775807L) >>> 58)
| // [765_____]
// [____________________________________________________________210]
((in[19 + inPos] & 9223372036854775807L) << 5)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [____________________________________________________09876543___]
((in[19 + inPos] & 9223372036854775807L) >>> 3)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321___________]
((in[19 + inPos] & 9223372036854775807L) >>> 11)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109___________________]
((in[19 + inPos] & 9223372036854775807L) >>> 19)) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [____________________________43210987___________________________]
((in[19 + inPos] & 9223372036854775807L) >>> 27)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [____________________21098765___________________________________]
((in[19 + inPos] & 9223372036854775807L) >>> 35)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [____________09876543___________________________________________]
((in[19 + inPos] & 9223372036854775807L) >>> 43)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [____87654321___________________________________________________]
((in[19 + inPos] & 9223372036854775807L) >>> 51)) & 255);
out[157 + outPos] = (byte)((
// [____3210]
// [2109___________________________________________________________]
((in[19 + inPos] & 9223372036854775807L) >>> 59)
| // [7654____]
// [___________________________________________________________3210]
((in[20 + inPos] & 9223372036854775807L) << 4)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [___________________________________________________10987654____]
((in[20 + inPos] & 9223372036854775807L) >>> 4)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432____________]
((in[20 + inPos] & 9223372036854775807L) >>> 12)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210____________________]
((in[20 + inPos] & 9223372036854775807L) >>> 20)) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [___________________________54321098____________________________]
((in[20 + inPos] & 9223372036854775807L) >>> 28)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [___________________32109876____________________________________]
((in[20 + inPos] & 9223372036854775807L) >>> 36)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [___________10987654____________________________________________]
((in[20 + inPos] & 9223372036854775807L) >>> 44)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [___98765432____________________________________________________]
((in[20 + inPos] & 9223372036854775807L) >>> 52)) & 255);
out[165 + outPos] = (byte)((
// [_____210]
// [210____________________________________________________________]
((in[20 + inPos] & 9223372036854775807L) >>> 60)
| // [76543___]
// [__________________________________________________________43210]
((in[21 + inPos] & 9223372036854775807L) << 3)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [__________________________________________________21098765_____]
((in[21 + inPos] & 9223372036854775807L) >>> 5)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543_____________]
((in[21 + inPos] & 9223372036854775807L) >>> 13)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_____________________]
((in[21 + inPos] & 9223372036854775807L) >>> 21)) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_____________________________]
((in[21 + inPos] & 9223372036854775807L) >>> 29)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [__________________43210987_____________________________________]
((in[21 + inPos] & 9223372036854775807L) >>> 37)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [__________21098765_____________________________________________]
((in[21 + inPos] & 9223372036854775807L) >>> 45)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [__09876543_____________________________________________________]
((in[21 + inPos] & 9223372036854775807L) >>> 53)) & 255);
out[173 + outPos] = (byte)((
// [______10]
// [21_____________________________________________________________]
((in[21 + inPos] & 9223372036854775807L) >>> 61)
| // [765432__]
// [_________________________________________________________543210]
((in[22 + inPos] & 9223372036854775807L) << 2)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [_________________________________________________32109876______]
((in[22 + inPos] & 9223372036854775807L) >>> 6)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654______________]
((in[22 + inPos] & 9223372036854775807L) >>> 14)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432______________________]
((in[22 + inPos] & 9223372036854775807L) >>> 22)) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [_________________________76543210______________________________]
((in[22 + inPos] & 9223372036854775807L) >>> 30)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [_________________54321098______________________________________]
((in[22 + inPos] & 9223372036854775807L) >>> 38)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [_________32109876______________________________________________]
((in[22 + inPos] & 9223372036854775807L) >>> 46)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [_10987654______________________________________________________]
((in[22 + inPos] & 9223372036854775807L) >>> 54)) & 255);
out[181 + outPos] = (byte)((
// [_______0]
// [2______________________________________________________________]
((in[22 + inPos] & 9223372036854775807L) >>> 62)
| // [7654321_]
// [________________________________________________________6543210]
((in[23 + inPos] & 9223372036854775807L) << 1)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________________________________________________43210987_______]
((in[23 + inPos] & 9223372036854775807L) >>> 7)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_______________]
((in[23 + inPos] & 9223372036854775807L) >>> 15)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_______________________]
((in[23 + inPos] & 9223372036854775807L) >>> 23)) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [________________________87654321_______________________________]
((in[23 + inPos] & 9223372036854775807L) >>> 31)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________________65432109_______________________________________]
((in[23 + inPos] & 9223372036854775807L) >>> 39)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [________43210987_______________________________________________]
((in[23 + inPos] & 9223372036854775807L) >>> 47)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [21098765_______________________________________________________]
((in[23 + inPos] & 9223372036854775807L) >>> 55)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [_______________________________________________________76543210]
((in[24 + inPos] & 9223372036854775807L))) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [_______________________________________________54321098________]
((in[24 + inPos] & 9223372036854775807L) >>> 8)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [_______________________________________32109876________________]
((in[24 + inPos] & 9223372036854775807L) >>> 16)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [_______________________________10987654________________________]
((in[24 + inPos] & 9223372036854775807L) >>> 24)) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [_______________________98765432________________________________]
((in[24 + inPos] & 9223372036854775807L) >>> 32)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [_______________76543210________________________________________]
((in[24 + inPos] & 9223372036854775807L) >>> 40)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [_______54321098________________________________________________]
((in[24 + inPos] & 9223372036854775807L) >>> 48)) & 255);
out[196 + outPos] = (byte)((
// [_6543210]
// [2109876________________________________________________________]
((in[24 + inPos] & 9223372036854775807L) >>> 56)
| // [7_______]
// [______________________________________________________________0]
((in[25 + inPos] & 9223372036854775807L) << 7)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [______________________________________________________87654321_]
((in[25 + inPos] & 9223372036854775807L) >>> 1)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [______________________________________________65432109_________]
((in[25 + inPos] & 9223372036854775807L) >>> 9)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [______________________________________43210987_________________]
((in[25 + inPos] & 9223372036854775807L) >>> 17)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [______________________________21098765_________________________]
((in[25 + inPos] & 9223372036854775807L) >>> 25)) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [______________________09876543_________________________________]
((in[25 + inPos] & 9223372036854775807L) >>> 33)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [______________87654321_________________________________________]
((in[25 + inPos] & 9223372036854775807L) >>> 41)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [______65432109_________________________________________________]
((in[25 + inPos] & 9223372036854775807L) >>> 49)) & 255);
out[204 + outPos] = (byte)((
// [__543210]
// [210987_________________________________________________________]
((in[25 + inPos] & 9223372036854775807L) >>> 57)
| // [76______]
// [_____________________________________________________________10]
((in[26 + inPos] & 9223372036854775807L) << 6)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [_____________________________________________________98765432__]
((in[26 + inPos] & 9223372036854775807L) >>> 2)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [_____________________________________________76543210__________]
((in[26 + inPos] & 9223372036854775807L) >>> 10)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [_____________________________________54321098__________________]
((in[26 + inPos] & 9223372036854775807L) >>> 18)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [_____________________________32109876__________________________]
((in[26 + inPos] & 9223372036854775807L) >>> 26)) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [_____________________10987654__________________________________]
((in[26 + inPos] & 9223372036854775807L) >>> 34)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [_____________98765432__________________________________________]
((in[26 + inPos] & 9223372036854775807L) >>> 42)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [_____76543210__________________________________________________]
((in[26 + inPos] & 9223372036854775807L) >>> 50)) & 255);
out[212 + outPos] = (byte)((
// [___43210]
// [21098__________________________________________________________]
((in[26 + inPos] & 9223372036854775807L) >>> 58)
| // [765_____]
// [____________________________________________________________210]
((in[27 + inPos] & 9223372036854775807L) << 5)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [____________________________________________________09876543___]
((in[27 + inPos] & 9223372036854775807L) >>> 3)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [____________________________________________87654321___________]
((in[27 + inPos] & 9223372036854775807L) >>> 11)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [____________________________________65432109___________________]
((in[27 + inPos] & 9223372036854775807L) >>> 19)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [____________________________43210987___________________________]
((in[27 + inPos] & 9223372036854775807L) >>> 27)) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [____________________21098765___________________________________]
((in[27 + inPos] & 9223372036854775807L) >>> 35)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [____________09876543___________________________________________]
((in[27 + inPos] & 9223372036854775807L) >>> 43)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [____87654321___________________________________________________]
((in[27 + inPos] & 9223372036854775807L) >>> 51)) & 255);
out[220 + outPos] = (byte)((
// [____3210]
// [2109___________________________________________________________]
((in[27 + inPos] & 9223372036854775807L) >>> 59)
| // [7654____]
// [___________________________________________________________3210]
((in[28 + inPos] & 9223372036854775807L) << 4)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [___________________________________________________10987654____]
((in[28 + inPos] & 9223372036854775807L) >>> 4)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [___________________________________________98765432____________]
((in[28 + inPos] & 9223372036854775807L) >>> 12)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [___________________________________76543210____________________]
((in[28 + inPos] & 9223372036854775807L) >>> 20)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [___________________________54321098____________________________]
((in[28 + inPos] & 9223372036854775807L) >>> 28)) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [___________________32109876____________________________________]
((in[28 + inPos] & 9223372036854775807L) >>> 36)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [___________10987654____________________________________________]
((in[28 + inPos] & 9223372036854775807L) >>> 44)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [___98765432____________________________________________________]
((in[28 + inPos] & 9223372036854775807L) >>> 52)) & 255);
out[228 + outPos] = (byte)((
// [_____210]
// [210____________________________________________________________]
((in[28 + inPos] & 9223372036854775807L) >>> 60)
| // [76543___]
// [__________________________________________________________43210]
((in[29 + inPos] & 9223372036854775807L) << 3)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [__________________________________________________21098765_____]
((in[29 + inPos] & 9223372036854775807L) >>> 5)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [__________________________________________09876543_____________]
((in[29 + inPos] & 9223372036854775807L) >>> 13)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [__________________________________87654321_____________________]
((in[29 + inPos] & 9223372036854775807L) >>> 21)) & 255);
out[232 + outPos] = (byte)((
// [76543210]
// [__________________________65432109_____________________________]
((in[29 + inPos] & 9223372036854775807L) >>> 29)) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [__________________43210987_____________________________________]
((in[29 + inPos] & 9223372036854775807L) >>> 37)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [__________21098765_____________________________________________]
((in[29 + inPos] & 9223372036854775807L) >>> 45)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [__09876543_____________________________________________________]
((in[29 + inPos] & 9223372036854775807L) >>> 53)) & 255);
out[236 + outPos] = (byte)((
// [______10]
// [21_____________________________________________________________]
((in[29 + inPos] & 9223372036854775807L) >>> 61)
| // [765432__]
// [_________________________________________________________543210]
((in[30 + inPos] & 9223372036854775807L) << 2)) & 255);
out[237 + outPos] = (byte)((
// [76543210]
// [_________________________________________________32109876______]
((in[30 + inPos] & 9223372036854775807L) >>> 6)) & 255);
out[238 + outPos] = (byte)((
// [76543210]
// [_________________________________________10987654______________]
((in[30 + inPos] & 9223372036854775807L) >>> 14)) & 255);
out[239 + outPos] = (byte)((
// [76543210]
// [_________________________________98765432______________________]
((in[30 + inPos] & 9223372036854775807L) >>> 22)) & 255);
out[240 + outPos] = (byte)((
// [76543210]
// [_________________________76543210______________________________]
((in[30 + inPos] & 9223372036854775807L) >>> 30)) & 255);
out[241 + outPos] = (byte)((
// [76543210]
// [_________________54321098______________________________________]
((in[30 + inPos] & 9223372036854775807L) >>> 38)) & 255);
out[242 + outPos] = (byte)((
// [76543210]
// [_________32109876______________________________________________]
((in[30 + inPos] & 9223372036854775807L) >>> 46)) & 255);
out[243 + outPos] = (byte)((
// [76543210]
// [_10987654______________________________________________________]
((in[30 + inPos] & 9223372036854775807L) >>> 54)) & 255);
out[244 + outPos] = (byte)((
// [_______0]
// [2______________________________________________________________]
((in[30 + inPos] & 9223372036854775807L) >>> 62)
| // [7654321_]
// [________________________________________________________6543210]
((in[31 + inPos] & 9223372036854775807L) << 1)) & 255);
out[245 + outPos] = (byte)((
// [76543210]
// [________________________________________________43210987_______]
((in[31 + inPos] & 9223372036854775807L) >>> 7)) & 255);
out[246 + outPos] = (byte)((
// [76543210]
// [________________________________________21098765_______________]
((in[31 + inPos] & 9223372036854775807L) >>> 15)) & 255);
out[247 + outPos] = (byte)((
// [76543210]
// [________________________________09876543_______________________]
((in[31 + inPos] & 9223372036854775807L) >>> 23)) & 255);
out[248 + outPos] = (byte)((
// [76543210]
// [________________________87654321_______________________________]
((in[31 + inPos] & 9223372036854775807L) >>> 31)) & 255);
out[249 + outPos] = (byte)((
// [76543210]
// [________________65432109_______________________________________]
((in[31 + inPos] & 9223372036854775807L) >>> 39)) & 255);
out[250 + outPos] = (byte)((
// [76543210]
// [________43210987_______________________________________________]
((in[31 + inPos] & 9223372036854775807L) >>> 47)) & 255);
out[251 + outPos] = (byte)((
// [76543210]
// [21098765_______________________________________________________]
((in[31 + inPos] & 9223372036854775807L) >>> 55)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 9223372036854775807L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in[ 9 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in[10 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in[11 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in[12 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in[13 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in[14 + inPos]) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in[15 + inPos]) << 57) & 9223372036854775807L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in[18 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in[19 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in[20 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in[21 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in[22 + inPos]) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in[23 + inPos]) << 58) & 9223372036854775807L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in[24 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in[25 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in[26 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in[27 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in[28 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in[29 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in[30 + inPos]) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in[31 + inPos]) << 59) & 9223372036854775807L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in[36 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in[37 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in[38 + inPos]) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in[39 + inPos]) << 60) & 9223372036854775807L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in[42 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in[43 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in[44 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in[45 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in[46 + inPos]) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in[47 + inPos]) << 61) & 9223372036854775807L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in[50 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in[51 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in[52 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in[53 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in[54 + inPos]) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in[55 + inPos]) << 62) & 9223372036854775807L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in[55 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in[56 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in[57 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in[58 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in[59 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in[60 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in[61 + inPos]) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in[62 + inPos]) << 55) & 9223372036854775807L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 9223372036854775807L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in.get( 9 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in.get(10 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in.get(11 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in.get(12 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in.get(13 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in.get(14 + inPos)) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in.get(15 + inPos)) << 57) & 9223372036854775807L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in.get(18 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in.get(19 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in.get(20 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in.get(21 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in.get(22 + inPos)) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in.get(23 + inPos)) << 58) & 9223372036854775807L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in.get(24 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in.get(25 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in.get(26 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in.get(27 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in.get(28 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in.get(29 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in.get(30 + inPos)) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in.get(31 + inPos)) << 59) & 9223372036854775807L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in.get(36 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in.get(37 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in.get(38 + inPos)) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in.get(39 + inPos)) << 60) & 9223372036854775807L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in.get(42 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in.get(43 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in.get(44 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in.get(45 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in.get(46 + inPos)) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in.get(47 + inPos)) << 61) & 9223372036854775807L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in.get(50 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in.get(51 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in.get(52 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in.get(53 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in.get(54 + inPos)) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in.get(55 + inPos)) << 62) & 9223372036854775807L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in.get(55 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in.get(56 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in.get(57 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in.get(58 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in.get(59 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in.get(60 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in.get(61 + inPos)) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in.get(62 + inPos)) << 55) & 9223372036854775807L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & 9223372036854775807L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in[ 7 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in[ 8 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in[ 9 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in[10 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in[11 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in[12 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in[13 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in[14 + inPos]) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in[15 + inPos]) << 57) & 9223372036854775807L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in[15 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in[16 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in[17 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in[18 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in[19 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in[20 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in[21 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in[22 + inPos]) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in[23 + inPos]) << 58) & 9223372036854775807L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in[23 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in[24 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in[25 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in[26 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in[27 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in[28 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in[29 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in[30 + inPos]) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in[31 + inPos]) << 59) & 9223372036854775807L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in[31 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in[32 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in[33 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in[34 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in[35 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in[36 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in[37 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in[38 + inPos]) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in[39 + inPos]) << 60) & 9223372036854775807L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in[39 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in[40 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in[41 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in[42 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in[43 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in[44 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in[45 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in[46 + inPos]) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in[47 + inPos]) << 61) & 9223372036854775807L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in[47 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in[48 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in[49 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in[50 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in[51 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in[52 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in[53 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in[54 + inPos]) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in[55 + inPos]) << 62) & 9223372036854775807L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in[55 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in[56 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in[57 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in[58 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in[59 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in[60 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in[61 + inPos]) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in[62 + inPos]) << 55) & 9223372036854775807L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in[63 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in[64 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in[65 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in[66 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in[67 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in[68 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in[69 + inPos]) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in[70 + inPos]) << 56) & 9223372036854775807L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in[70 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in[71 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in[72 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in[73 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in[74 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in[75 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in[76 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in[77 + inPos]) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in[78 + inPos]) << 57) & 9223372036854775807L);
out[10 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in[78 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in[79 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in[80 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in[81 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in[82 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in[83 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in[84 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in[85 + inPos]) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in[86 + inPos]) << 58) & 9223372036854775807L);
out[11 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in[86 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in[87 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in[88 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in[89 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in[90 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in[91 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in[92 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in[93 + inPos]) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in[94 + inPos]) << 59) & 9223372036854775807L);
out[12 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in[94 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in[95 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in[96 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in[97 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in[98 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in[99 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in[100 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in[101 + inPos]) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in[102 + inPos]) << 60) & 9223372036854775807L);
out[13 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in[102 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in[103 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in[104 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in[105 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in[106 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in[107 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in[108 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in[109 + inPos]) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in[110 + inPos]) << 61) & 9223372036854775807L);
out[14 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in[110 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in[111 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in[112 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in[113 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in[114 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in[115 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in[116 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in[117 + inPos]) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in[118 + inPos]) << 62) & 9223372036854775807L);
out[15 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in[118 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in[119 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in[120 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in[121 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in[122 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in[123 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in[124 + inPos]) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in[125 + inPos]) << 55) & 9223372036854775807L);
out[16 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in[126 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in[127 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in[128 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in[129 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in[130 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in[131 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in[132 + inPos]) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in[133 + inPos]) << 56) & 9223372036854775807L);
out[17 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in[133 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in[134 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in[135 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in[136 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in[137 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in[138 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in[139 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in[140 + inPos]) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in[141 + inPos]) << 57) & 9223372036854775807L);
out[18 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in[141 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in[142 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in[143 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in[144 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in[145 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in[146 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in[147 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in[148 + inPos]) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in[149 + inPos]) << 58) & 9223372036854775807L);
out[19 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in[149 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in[150 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in[151 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in[152 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in[153 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in[154 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in[155 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in[156 + inPos]) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in[157 + inPos]) << 59) & 9223372036854775807L);
out[20 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in[157 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in[158 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in[159 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in[160 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in[161 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in[162 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in[163 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in[164 + inPos]) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in[165 + inPos]) << 60) & 9223372036854775807L);
out[21 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in[165 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in[166 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in[167 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in[168 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in[169 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in[170 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in[171 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in[172 + inPos]) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in[173 + inPos]) << 61) & 9223372036854775807L);
out[22 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in[173 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in[174 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in[175 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in[176 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in[177 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in[178 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in[179 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in[180 + inPos]) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in[181 + inPos]) << 62) & 9223372036854775807L);
out[23 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in[181 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in[182 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in[183 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in[184 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in[185 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in[186 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in[187 + inPos]) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in[188 + inPos]) << 55) & 9223372036854775807L);
out[24 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in[189 + inPos]) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in[190 + inPos]) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in[191 + inPos]) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in[192 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in[193 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in[194 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in[195 + inPos]) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in[196 + inPos]) << 56) & 9223372036854775807L);
out[25 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in[196 + inPos]) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in[197 + inPos]) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in[198 + inPos]) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in[199 + inPos]) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in[200 + inPos]) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in[201 + inPos]) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in[202 + inPos]) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in[203 + inPos]) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in[204 + inPos]) << 57) & 9223372036854775807L);
out[26 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in[204 + inPos]) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in[205 + inPos]) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in[206 + inPos]) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in[207 + inPos]) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in[208 + inPos]) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in[209 + inPos]) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in[210 + inPos]) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in[211 + inPos]) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in[212 + inPos]) << 58) & 9223372036854775807L);
out[27 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in[212 + inPos]) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in[213 + inPos]) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in[214 + inPos]) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in[215 + inPos]) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in[216 + inPos]) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in[217 + inPos]) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in[218 + inPos]) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in[219 + inPos]) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in[220 + inPos]) << 59) & 9223372036854775807L);
out[28 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in[220 + inPos]) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in[221 + inPos]) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in[222 + inPos]) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in[223 + inPos]) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in[224 + inPos]) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in[225 + inPos]) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in[226 + inPos]) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in[227 + inPos]) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in[228 + inPos]) << 60) & 9223372036854775807L);
out[29 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in[228 + inPos]) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in[229 + inPos]) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in[230 + inPos]) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in[231 + inPos]) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in[232 + inPos]) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in[233 + inPos]) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in[234 + inPos]) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in[235 + inPos]) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in[236 + inPos]) << 61) & 9223372036854775807L);
out[30 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in[236 + inPos]) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in[237 + inPos]) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in[238 + inPos]) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in[239 + inPos]) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in[240 + inPos]) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in[241 + inPos]) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in[242 + inPos]) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in[243 + inPos]) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in[244 + inPos]) << 62) & 9223372036854775807L);
out[31 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in[244 + inPos]) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in[245 + inPos]) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in[246 + inPos]) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in[247 + inPos]) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in[248 + inPos]) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in[249 + inPos]) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in[250 + inPos]) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in[251 + inPos]) << 55) & 9223372036854775807L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & 9223372036854775807L);
out[ 1 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in.get( 7 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in.get( 8 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in.get( 9 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in.get(10 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in.get(11 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in.get(12 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in.get(13 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in.get(14 + inPos)) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in.get(15 + inPos)) << 57) & 9223372036854775807L);
out[ 2 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in.get(15 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in.get(16 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in.get(17 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in.get(18 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in.get(19 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in.get(20 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in.get(21 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in.get(22 + inPos)) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in.get(23 + inPos)) << 58) & 9223372036854775807L);
out[ 3 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in.get(23 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in.get(24 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in.get(25 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in.get(26 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in.get(27 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in.get(28 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in.get(29 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in.get(30 + inPos)) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in.get(31 + inPos)) << 59) & 9223372036854775807L);
out[ 4 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in.get(31 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in.get(32 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in.get(33 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in.get(34 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in.get(35 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in.get(36 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in.get(37 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in.get(38 + inPos)) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in.get(39 + inPos)) << 60) & 9223372036854775807L);
out[ 5 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in.get(39 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in.get(40 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in.get(41 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in.get(42 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in.get(43 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in.get(44 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in.get(45 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in.get(46 + inPos)) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in.get(47 + inPos)) << 61) & 9223372036854775807L);
out[ 6 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in.get(47 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in.get(48 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in.get(49 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in.get(50 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in.get(51 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in.get(52 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in.get(53 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in.get(54 + inPos)) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in.get(55 + inPos)) << 62) & 9223372036854775807L);
out[ 7 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in.get(55 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in.get(56 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in.get(57 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in.get(58 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in.get(59 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in.get(60 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in.get(61 + inPos)) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in.get(62 + inPos)) << 55) & 9223372036854775807L);
out[ 8 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in.get(63 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in.get(64 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in.get(65 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in.get(66 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in.get(67 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in.get(68 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in.get(69 + inPos)) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in.get(70 + inPos)) << 56) & 9223372036854775807L);
out[ 9 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in.get(70 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in.get(71 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in.get(72 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in.get(73 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in.get(74 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in.get(75 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in.get(76 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in.get(77 + inPos)) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in.get(78 + inPos)) << 57) & 9223372036854775807L);
out[10 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in.get(78 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in.get(79 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in.get(80 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in.get(81 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in.get(82 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in.get(83 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in.get(84 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in.get(85 + inPos)) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in.get(86 + inPos)) << 58) & 9223372036854775807L);
out[11 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in.get(86 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in.get(87 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in.get(88 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in.get(89 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in.get(90 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in.get(91 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in.get(92 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in.get(93 + inPos)) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in.get(94 + inPos)) << 59) & 9223372036854775807L);
out[12 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in.get(94 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in.get(95 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in.get(96 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in.get(97 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in.get(98 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in.get(99 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in.get(100 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in.get(101 + inPos)) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in.get(102 + inPos)) << 60) & 9223372036854775807L);
out[13 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in.get(102 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in.get(103 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in.get(104 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in.get(105 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in.get(106 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in.get(107 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in.get(108 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in.get(109 + inPos)) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in.get(110 + inPos)) << 61) & 9223372036854775807L);
out[14 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in.get(110 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in.get(111 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in.get(112 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in.get(113 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in.get(114 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in.get(115 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in.get(116 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in.get(117 + inPos)) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in.get(118 + inPos)) << 62) & 9223372036854775807L);
out[15 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in.get(118 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in.get(119 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in.get(120 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in.get(121 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in.get(122 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in.get(123 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in.get(124 + inPos)) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in.get(125 + inPos)) << 55) & 9223372036854775807L);
out[16 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in.get(126 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in.get(127 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in.get(128 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in.get(129 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in.get(130 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in.get(131 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in.get(132 + inPos)) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in.get(133 + inPos)) << 56) & 9223372036854775807L);
out[17 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in.get(133 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in.get(134 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in.get(135 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in.get(136 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in.get(137 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in.get(138 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in.get(139 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in.get(140 + inPos)) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in.get(141 + inPos)) << 57) & 9223372036854775807L);
out[18 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in.get(141 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in.get(142 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in.get(143 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in.get(144 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in.get(145 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in.get(146 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in.get(147 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in.get(148 + inPos)) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in.get(149 + inPos)) << 58) & 9223372036854775807L);
out[19 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in.get(149 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in.get(150 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in.get(151 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in.get(152 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in.get(153 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in.get(154 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in.get(155 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in.get(156 + inPos)) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in.get(157 + inPos)) << 59) & 9223372036854775807L);
out[20 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in.get(157 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in.get(158 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in.get(159 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in.get(160 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in.get(161 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in.get(162 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in.get(163 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in.get(164 + inPos)) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in.get(165 + inPos)) << 60) & 9223372036854775807L);
out[21 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in.get(165 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in.get(166 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in.get(167 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in.get(168 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in.get(169 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in.get(170 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in.get(171 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in.get(172 + inPos)) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in.get(173 + inPos)) << 61) & 9223372036854775807L);
out[22 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in.get(173 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in.get(174 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in.get(175 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in.get(176 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in.get(177 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in.get(178 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in.get(179 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in.get(180 + inPos)) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in.get(181 + inPos)) << 62) & 9223372036854775807L);
out[23 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in.get(181 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in.get(182 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in.get(183 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in.get(184 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in.get(185 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in.get(186 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in.get(187 + inPos)) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in.get(188 + inPos)) << 55) & 9223372036854775807L);
out[24 + outPos] =
// [76543210]
// [_______________________________________________________76543210]
((((long)in.get(189 + inPos)) ) & 255L)
| // [76543210]
// [_______________________________________________54321098________]
((((long)in.get(190 + inPos)) << 8) & 65535L)
| // [76543210]
// [_______________________________________32109876________________]
((((long)in.get(191 + inPos)) << 16) & 16777215L)
| // [76543210]
// [_______________________________10987654________________________]
((((long)in.get(192 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [_______________________98765432________________________________]
((((long)in.get(193 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [_______________76543210________________________________________]
((((long)in.get(194 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [_______54321098________________________________________________]
((((long)in.get(195 + inPos)) << 48) & 72057594037927935L)
| // [_6543210]
// [2109876________________________________________________________]
((((long)in.get(196 + inPos)) << 56) & 9223372036854775807L);
out[25 + outPos] =
// [7_______]
// [______________________________________________________________0]
((((long)in.get(196 + inPos)) >> 7) & 1L)
| // [76543210]
// [______________________________________________________87654321_]
((((long)in.get(197 + inPos)) << 1) & 511L)
| // [76543210]
// [______________________________________________65432109_________]
((((long)in.get(198 + inPos)) << 9) & 131071L)
| // [76543210]
// [______________________________________43210987_________________]
((((long)in.get(199 + inPos)) << 17) & 33554431L)
| // [76543210]
// [______________________________21098765_________________________]
((((long)in.get(200 + inPos)) << 25) & 8589934591L)
| // [76543210]
// [______________________09876543_________________________________]
((((long)in.get(201 + inPos)) << 33) & 2199023255551L)
| // [76543210]
// [______________87654321_________________________________________]
((((long)in.get(202 + inPos)) << 41) & 562949953421311L)
| // [76543210]
// [______65432109_________________________________________________]
((((long)in.get(203 + inPos)) << 49) & 144115188075855871L)
| // [__543210]
// [210987_________________________________________________________]
((((long)in.get(204 + inPos)) << 57) & 9223372036854775807L);
out[26 + outPos] =
// [76______]
// [_____________________________________________________________10]
((((long)in.get(204 + inPos)) >> 6) & 3L)
| // [76543210]
// [_____________________________________________________98765432__]
((((long)in.get(205 + inPos)) << 2) & 1023L)
| // [76543210]
// [_____________________________________________76543210__________]
((((long)in.get(206 + inPos)) << 10) & 262143L)
| // [76543210]
// [_____________________________________54321098__________________]
((((long)in.get(207 + inPos)) << 18) & 67108863L)
| // [76543210]
// [_____________________________32109876__________________________]
((((long)in.get(208 + inPos)) << 26) & 17179869183L)
| // [76543210]
// [_____________________10987654__________________________________]
((((long)in.get(209 + inPos)) << 34) & 4398046511103L)
| // [76543210]
// [_____________98765432__________________________________________]
((((long)in.get(210 + inPos)) << 42) & 1125899906842623L)
| // [76543210]
// [_____76543210__________________________________________________]
((((long)in.get(211 + inPos)) << 50) & 288230376151711743L)
| // [___43210]
// [21098__________________________________________________________]
((((long)in.get(212 + inPos)) << 58) & 9223372036854775807L);
out[27 + outPos] =
// [765_____]
// [____________________________________________________________210]
((((long)in.get(212 + inPos)) >> 5) & 7L)
| // [76543210]
// [____________________________________________________09876543___]
((((long)in.get(213 + inPos)) << 3) & 2047L)
| // [76543210]
// [____________________________________________87654321___________]
((((long)in.get(214 + inPos)) << 11) & 524287L)
| // [76543210]
// [____________________________________65432109___________________]
((((long)in.get(215 + inPos)) << 19) & 134217727L)
| // [76543210]
// [____________________________43210987___________________________]
((((long)in.get(216 + inPos)) << 27) & 34359738367L)
| // [76543210]
// [____________________21098765___________________________________]
((((long)in.get(217 + inPos)) << 35) & 8796093022207L)
| // [76543210]
// [____________09876543___________________________________________]
((((long)in.get(218 + inPos)) << 43) & 2251799813685247L)
| // [76543210]
// [____87654321___________________________________________________]
((((long)in.get(219 + inPos)) << 51) & 576460752303423487L)
| // [____3210]
// [2109___________________________________________________________]
((((long)in.get(220 + inPos)) << 59) & 9223372036854775807L);
out[28 + outPos] =
// [7654____]
// [___________________________________________________________3210]
((((long)in.get(220 + inPos)) >> 4) & 15L)
| // [76543210]
// [___________________________________________________10987654____]
((((long)in.get(221 + inPos)) << 4) & 4095L)
| // [76543210]
// [___________________________________________98765432____________]
((((long)in.get(222 + inPos)) << 12) & 1048575L)
| // [76543210]
// [___________________________________76543210____________________]
((((long)in.get(223 + inPos)) << 20) & 268435455L)
| // [76543210]
// [___________________________54321098____________________________]
((((long)in.get(224 + inPos)) << 28) & 68719476735L)
| // [76543210]
// [___________________32109876____________________________________]
((((long)in.get(225 + inPos)) << 36) & 17592186044415L)
| // [76543210]
// [___________10987654____________________________________________]
((((long)in.get(226 + inPos)) << 44) & 4503599627370495L)
| // [76543210]
// [___98765432____________________________________________________]
((((long)in.get(227 + inPos)) << 52) & 1152921504606846975L)
| // [_____210]
// [210____________________________________________________________]
((((long)in.get(228 + inPos)) << 60) & 9223372036854775807L);
out[29 + outPos] =
// [76543___]
// [__________________________________________________________43210]
((((long)in.get(228 + inPos)) >> 3) & 31L)
| // [76543210]
// [__________________________________________________21098765_____]
((((long)in.get(229 + inPos)) << 5) & 8191L)
| // [76543210]
// [__________________________________________09876543_____________]
((((long)in.get(230 + inPos)) << 13) & 2097151L)
| // [76543210]
// [__________________________________87654321_____________________]
((((long)in.get(231 + inPos)) << 21) & 536870911L)
| // [76543210]
// [__________________________65432109_____________________________]
((((long)in.get(232 + inPos)) << 29) & 137438953471L)
| // [76543210]
// [__________________43210987_____________________________________]
((((long)in.get(233 + inPos)) << 37) & 35184372088831L)
| // [76543210]
// [__________21098765_____________________________________________]
((((long)in.get(234 + inPos)) << 45) & 9007199254740991L)
| // [76543210]
// [__09876543_____________________________________________________]
((((long)in.get(235 + inPos)) << 53) & 2305843009213693951L)
| // [______10]
// [21_____________________________________________________________]
((((long)in.get(236 + inPos)) << 61) & 9223372036854775807L);
out[30 + outPos] =
// [765432__]
// [_________________________________________________________543210]
((((long)in.get(236 + inPos)) >> 2) & 63L)
| // [76543210]
// [_________________________________________________32109876______]
((((long)in.get(237 + inPos)) << 6) & 16383L)
| // [76543210]
// [_________________________________________10987654______________]
((((long)in.get(238 + inPos)) << 14) & 4194303L)
| // [76543210]
// [_________________________________98765432______________________]
((((long)in.get(239 + inPos)) << 22) & 1073741823L)
| // [76543210]
// [_________________________76543210______________________________]
((((long)in.get(240 + inPos)) << 30) & 274877906943L)
| // [76543210]
// [_________________54321098______________________________________]
((((long)in.get(241 + inPos)) << 38) & 70368744177663L)
| // [76543210]
// [_________32109876______________________________________________]
((((long)in.get(242 + inPos)) << 46) & 18014398509481983L)
| // [76543210]
// [_10987654______________________________________________________]
((((long)in.get(243 + inPos)) << 54) & 4611686018427387903L)
| // [_______0]
// [2______________________________________________________________]
((((long)in.get(244 + inPos)) << 62) & 9223372036854775807L);
out[31 + outPos] =
// [7654321_]
// [________________________________________________________6543210]
((((long)in.get(244 + inPos)) >> 1) & 127L)
| // [76543210]
// [________________________________________________43210987_______]
((((long)in.get(245 + inPos)) << 7) & 32767L)
| // [76543210]
// [________________________________________21098765_______________]
((((long)in.get(246 + inPos)) << 15) & 8388607L)
| // [76543210]
// [________________________________09876543_______________________]
((((long)in.get(247 + inPos)) << 23) & 2147483647L)
| // [76543210]
// [________________________87654321_______________________________]
((((long)in.get(248 + inPos)) << 31) & 549755813887L)
| // [76543210]
// [________________65432109_______________________________________]
((((long)in.get(249 + inPos)) << 39) & 140737488355327L)
| // [76543210]
// [________43210987_______________________________________________]
((((long)in.get(250 + inPos)) << 47) & 36028797018963967L)
| // [76543210]
// [21098765_______________________________________________________]
((((long)in.get(251 + inPos)) << 55) & 9223372036854775807L);
}
}
private static final class Packer64 extends BytePackerForLong {
private Packer64() {
super(64);
}
public final void pack8Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 0 + inPos] & -1L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 0 + inPos] & -1L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 0 + inPos] & -1L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 0 + inPos] & -1L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 0 + inPos] & -1L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 0 + inPos] & -1L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 0 + inPos] & -1L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 0 + inPos] & -1L) >>> 56)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 1 + inPos] & -1L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 1 + inPos] & -1L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 1 + inPos] & -1L) >>> 16)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 1 + inPos] & -1L) >>> 24)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 1 + inPos] & -1L) >>> 32)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 1 + inPos] & -1L) >>> 40)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 1 + inPos] & -1L) >>> 48)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 1 + inPos] & -1L) >>> 56)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 2 + inPos] & -1L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 2 + inPos] & -1L) >>> 8)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 2 + inPos] & -1L) >>> 16)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 2 + inPos] & -1L) >>> 24)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 2 + inPos] & -1L) >>> 32)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 2 + inPos] & -1L) >>> 40)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 2 + inPos] & -1L) >>> 48)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 2 + inPos] & -1L) >>> 56)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 3 + inPos] & -1L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 3 + inPos] & -1L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 3 + inPos] & -1L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 3 + inPos] & -1L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 3 + inPos] & -1L) >>> 32)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 3 + inPos] & -1L) >>> 40)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 3 + inPos] & -1L) >>> 48)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 3 + inPos] & -1L) >>> 56)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 4 + inPos] & -1L))) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 4 + inPos] & -1L) >>> 8)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 4 + inPos] & -1L) >>> 16)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 4 + inPos] & -1L) >>> 24)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 4 + inPos] & -1L) >>> 32)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 4 + inPos] & -1L) >>> 40)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 4 + inPos] & -1L) >>> 48)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 4 + inPos] & -1L) >>> 56)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 5 + inPos] & -1L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 5 + inPos] & -1L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 5 + inPos] & -1L) >>> 16)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 5 + inPos] & -1L) >>> 24)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 5 + inPos] & -1L) >>> 32)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 5 + inPos] & -1L) >>> 40)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 5 + inPos] & -1L) >>> 48)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 5 + inPos] & -1L) >>> 56)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 6 + inPos] & -1L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 6 + inPos] & -1L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 6 + inPos] & -1L) >>> 16)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 6 + inPos] & -1L) >>> 24)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 6 + inPos] & -1L) >>> 32)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 6 + inPos] & -1L) >>> 40)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 6 + inPos] & -1L) >>> 48)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 6 + inPos] & -1L) >>> 56)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 7 + inPos] & -1L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 7 + inPos] & -1L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 7 + inPos] & -1L) >>> 16)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 7 + inPos] & -1L) >>> 24)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 7 + inPos] & -1L) >>> 32)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 7 + inPos] & -1L) >>> 40)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 7 + inPos] & -1L) >>> 48)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 7 + inPos] & -1L) >>> 56)) & 255);
}
public final void pack32Values(final long[] in, final int inPos, final byte[] out, final int outPos) {
out[ 0 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 0 + inPos] & -1L))) & 255);
out[ 1 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 0 + inPos] & -1L) >>> 8)) & 255);
out[ 2 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 0 + inPos] & -1L) >>> 16)) & 255);
out[ 3 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 0 + inPos] & -1L) >>> 24)) & 255);
out[ 4 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 0 + inPos] & -1L) >>> 32)) & 255);
out[ 5 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 0 + inPos] & -1L) >>> 40)) & 255);
out[ 6 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 0 + inPos] & -1L) >>> 48)) & 255);
out[ 7 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 0 + inPos] & -1L) >>> 56)) & 255);
out[ 8 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 1 + inPos] & -1L))) & 255);
out[ 9 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 1 + inPos] & -1L) >>> 8)) & 255);
out[10 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 1 + inPos] & -1L) >>> 16)) & 255);
out[11 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 1 + inPos] & -1L) >>> 24)) & 255);
out[12 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 1 + inPos] & -1L) >>> 32)) & 255);
out[13 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 1 + inPos] & -1L) >>> 40)) & 255);
out[14 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 1 + inPos] & -1L) >>> 48)) & 255);
out[15 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 1 + inPos] & -1L) >>> 56)) & 255);
out[16 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 2 + inPos] & -1L))) & 255);
out[17 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 2 + inPos] & -1L) >>> 8)) & 255);
out[18 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 2 + inPos] & -1L) >>> 16)) & 255);
out[19 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 2 + inPos] & -1L) >>> 24)) & 255);
out[20 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 2 + inPos] & -1L) >>> 32)) & 255);
out[21 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 2 + inPos] & -1L) >>> 40)) & 255);
out[22 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 2 + inPos] & -1L) >>> 48)) & 255);
out[23 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 2 + inPos] & -1L) >>> 56)) & 255);
out[24 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 3 + inPos] & -1L))) & 255);
out[25 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 3 + inPos] & -1L) >>> 8)) & 255);
out[26 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 3 + inPos] & -1L) >>> 16)) & 255);
out[27 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 3 + inPos] & -1L) >>> 24)) & 255);
out[28 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 3 + inPos] & -1L) >>> 32)) & 255);
out[29 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 3 + inPos] & -1L) >>> 40)) & 255);
out[30 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 3 + inPos] & -1L) >>> 48)) & 255);
out[31 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 3 + inPos] & -1L) >>> 56)) & 255);
out[32 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 4 + inPos] & -1L))) & 255);
out[33 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 4 + inPos] & -1L) >>> 8)) & 255);
out[34 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 4 + inPos] & -1L) >>> 16)) & 255);
out[35 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 4 + inPos] & -1L) >>> 24)) & 255);
out[36 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 4 + inPos] & -1L) >>> 32)) & 255);
out[37 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 4 + inPos] & -1L) >>> 40)) & 255);
out[38 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 4 + inPos] & -1L) >>> 48)) & 255);
out[39 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 4 + inPos] & -1L) >>> 56)) & 255);
out[40 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 5 + inPos] & -1L))) & 255);
out[41 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 5 + inPos] & -1L) >>> 8)) & 255);
out[42 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 5 + inPos] & -1L) >>> 16)) & 255);
out[43 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 5 + inPos] & -1L) >>> 24)) & 255);
out[44 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 5 + inPos] & -1L) >>> 32)) & 255);
out[45 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 5 + inPos] & -1L) >>> 40)) & 255);
out[46 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 5 + inPos] & -1L) >>> 48)) & 255);
out[47 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 5 + inPos] & -1L) >>> 56)) & 255);
out[48 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 6 + inPos] & -1L))) & 255);
out[49 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 6 + inPos] & -1L) >>> 8)) & 255);
out[50 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 6 + inPos] & -1L) >>> 16)) & 255);
out[51 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 6 + inPos] & -1L) >>> 24)) & 255);
out[52 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 6 + inPos] & -1L) >>> 32)) & 255);
out[53 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 6 + inPos] & -1L) >>> 40)) & 255);
out[54 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 6 + inPos] & -1L) >>> 48)) & 255);
out[55 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 6 + inPos] & -1L) >>> 56)) & 255);
out[56 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 7 + inPos] & -1L))) & 255);
out[57 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 7 + inPos] & -1L) >>> 8)) & 255);
out[58 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 7 + inPos] & -1L) >>> 16)) & 255);
out[59 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 7 + inPos] & -1L) >>> 24)) & 255);
out[60 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 7 + inPos] & -1L) >>> 32)) & 255);
out[61 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 7 + inPos] & -1L) >>> 40)) & 255);
out[62 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 7 + inPos] & -1L) >>> 48)) & 255);
out[63 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 7 + inPos] & -1L) >>> 56)) & 255);
out[64 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 8 + inPos] & -1L))) & 255);
out[65 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 8 + inPos] & -1L) >>> 8)) & 255);
out[66 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 8 + inPos] & -1L) >>> 16)) & 255);
out[67 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 8 + inPos] & -1L) >>> 24)) & 255);
out[68 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 8 + inPos] & -1L) >>> 32)) & 255);
out[69 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 8 + inPos] & -1L) >>> 40)) & 255);
out[70 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 8 + inPos] & -1L) >>> 48)) & 255);
out[71 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 8 + inPos] & -1L) >>> 56)) & 255);
out[72 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[ 9 + inPos] & -1L))) & 255);
out[73 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[ 9 + inPos] & -1L) >>> 8)) & 255);
out[74 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[ 9 + inPos] & -1L) >>> 16)) & 255);
out[75 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[ 9 + inPos] & -1L) >>> 24)) & 255);
out[76 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[ 9 + inPos] & -1L) >>> 32)) & 255);
out[77 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[ 9 + inPos] & -1L) >>> 40)) & 255);
out[78 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[ 9 + inPos] & -1L) >>> 48)) & 255);
out[79 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[ 9 + inPos] & -1L) >>> 56)) & 255);
out[80 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[10 + inPos] & -1L))) & 255);
out[81 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[10 + inPos] & -1L) >>> 8)) & 255);
out[82 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[10 + inPos] & -1L) >>> 16)) & 255);
out[83 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[10 + inPos] & -1L) >>> 24)) & 255);
out[84 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[10 + inPos] & -1L) >>> 32)) & 255);
out[85 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[10 + inPos] & -1L) >>> 40)) & 255);
out[86 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[10 + inPos] & -1L) >>> 48)) & 255);
out[87 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[10 + inPos] & -1L) >>> 56)) & 255);
out[88 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[11 + inPos] & -1L))) & 255);
out[89 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[11 + inPos] & -1L) >>> 8)) & 255);
out[90 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[11 + inPos] & -1L) >>> 16)) & 255);
out[91 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[11 + inPos] & -1L) >>> 24)) & 255);
out[92 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[11 + inPos] & -1L) >>> 32)) & 255);
out[93 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[11 + inPos] & -1L) >>> 40)) & 255);
out[94 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[11 + inPos] & -1L) >>> 48)) & 255);
out[95 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[11 + inPos] & -1L) >>> 56)) & 255);
out[96 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[12 + inPos] & -1L))) & 255);
out[97 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[12 + inPos] & -1L) >>> 8)) & 255);
out[98 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[12 + inPos] & -1L) >>> 16)) & 255);
out[99 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[12 + inPos] & -1L) >>> 24)) & 255);
out[100 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[12 + inPos] & -1L) >>> 32)) & 255);
out[101 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[12 + inPos] & -1L) >>> 40)) & 255);
out[102 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[12 + inPos] & -1L) >>> 48)) & 255);
out[103 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[12 + inPos] & -1L) >>> 56)) & 255);
out[104 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[13 + inPos] & -1L))) & 255);
out[105 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[13 + inPos] & -1L) >>> 8)) & 255);
out[106 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[13 + inPos] & -1L) >>> 16)) & 255);
out[107 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[13 + inPos] & -1L) >>> 24)) & 255);
out[108 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[13 + inPos] & -1L) >>> 32)) & 255);
out[109 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[13 + inPos] & -1L) >>> 40)) & 255);
out[110 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[13 + inPos] & -1L) >>> 48)) & 255);
out[111 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[13 + inPos] & -1L) >>> 56)) & 255);
out[112 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[14 + inPos] & -1L))) & 255);
out[113 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[14 + inPos] & -1L) >>> 8)) & 255);
out[114 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[14 + inPos] & -1L) >>> 16)) & 255);
out[115 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[14 + inPos] & -1L) >>> 24)) & 255);
out[116 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[14 + inPos] & -1L) >>> 32)) & 255);
out[117 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[14 + inPos] & -1L) >>> 40)) & 255);
out[118 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[14 + inPos] & -1L) >>> 48)) & 255);
out[119 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[14 + inPos] & -1L) >>> 56)) & 255);
out[120 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[15 + inPos] & -1L))) & 255);
out[121 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[15 + inPos] & -1L) >>> 8)) & 255);
out[122 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[15 + inPos] & -1L) >>> 16)) & 255);
out[123 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[15 + inPos] & -1L) >>> 24)) & 255);
out[124 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[15 + inPos] & -1L) >>> 32)) & 255);
out[125 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[15 + inPos] & -1L) >>> 40)) & 255);
out[126 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[15 + inPos] & -1L) >>> 48)) & 255);
out[127 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[15 + inPos] & -1L) >>> 56)) & 255);
out[128 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[16 + inPos] & -1L))) & 255);
out[129 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[16 + inPos] & -1L) >>> 8)) & 255);
out[130 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[16 + inPos] & -1L) >>> 16)) & 255);
out[131 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[16 + inPos] & -1L) >>> 24)) & 255);
out[132 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[16 + inPos] & -1L) >>> 32)) & 255);
out[133 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[16 + inPos] & -1L) >>> 40)) & 255);
out[134 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[16 + inPos] & -1L) >>> 48)) & 255);
out[135 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[16 + inPos] & -1L) >>> 56)) & 255);
out[136 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[17 + inPos] & -1L))) & 255);
out[137 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[17 + inPos] & -1L) >>> 8)) & 255);
out[138 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[17 + inPos] & -1L) >>> 16)) & 255);
out[139 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[17 + inPos] & -1L) >>> 24)) & 255);
out[140 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[17 + inPos] & -1L) >>> 32)) & 255);
out[141 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[17 + inPos] & -1L) >>> 40)) & 255);
out[142 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[17 + inPos] & -1L) >>> 48)) & 255);
out[143 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[17 + inPos] & -1L) >>> 56)) & 255);
out[144 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[18 + inPos] & -1L))) & 255);
out[145 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[18 + inPos] & -1L) >>> 8)) & 255);
out[146 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[18 + inPos] & -1L) >>> 16)) & 255);
out[147 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[18 + inPos] & -1L) >>> 24)) & 255);
out[148 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[18 + inPos] & -1L) >>> 32)) & 255);
out[149 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[18 + inPos] & -1L) >>> 40)) & 255);
out[150 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[18 + inPos] & -1L) >>> 48)) & 255);
out[151 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[18 + inPos] & -1L) >>> 56)) & 255);
out[152 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[19 + inPos] & -1L))) & 255);
out[153 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[19 + inPos] & -1L) >>> 8)) & 255);
out[154 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[19 + inPos] & -1L) >>> 16)) & 255);
out[155 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[19 + inPos] & -1L) >>> 24)) & 255);
out[156 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[19 + inPos] & -1L) >>> 32)) & 255);
out[157 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[19 + inPos] & -1L) >>> 40)) & 255);
out[158 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[19 + inPos] & -1L) >>> 48)) & 255);
out[159 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[19 + inPos] & -1L) >>> 56)) & 255);
out[160 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[20 + inPos] & -1L))) & 255);
out[161 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[20 + inPos] & -1L) >>> 8)) & 255);
out[162 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[20 + inPos] & -1L) >>> 16)) & 255);
out[163 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[20 + inPos] & -1L) >>> 24)) & 255);
out[164 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[20 + inPos] & -1L) >>> 32)) & 255);
out[165 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[20 + inPos] & -1L) >>> 40)) & 255);
out[166 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[20 + inPos] & -1L) >>> 48)) & 255);
out[167 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[20 + inPos] & -1L) >>> 56)) & 255);
out[168 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[21 + inPos] & -1L))) & 255);
out[169 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[21 + inPos] & -1L) >>> 8)) & 255);
out[170 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[21 + inPos] & -1L) >>> 16)) & 255);
out[171 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[21 + inPos] & -1L) >>> 24)) & 255);
out[172 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[21 + inPos] & -1L) >>> 32)) & 255);
out[173 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[21 + inPos] & -1L) >>> 40)) & 255);
out[174 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[21 + inPos] & -1L) >>> 48)) & 255);
out[175 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[21 + inPos] & -1L) >>> 56)) & 255);
out[176 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[22 + inPos] & -1L))) & 255);
out[177 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[22 + inPos] & -1L) >>> 8)) & 255);
out[178 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[22 + inPos] & -1L) >>> 16)) & 255);
out[179 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[22 + inPos] & -1L) >>> 24)) & 255);
out[180 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[22 + inPos] & -1L) >>> 32)) & 255);
out[181 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[22 + inPos] & -1L) >>> 40)) & 255);
out[182 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[22 + inPos] & -1L) >>> 48)) & 255);
out[183 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[22 + inPos] & -1L) >>> 56)) & 255);
out[184 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[23 + inPos] & -1L))) & 255);
out[185 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[23 + inPos] & -1L) >>> 8)) & 255);
out[186 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[23 + inPos] & -1L) >>> 16)) & 255);
out[187 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[23 + inPos] & -1L) >>> 24)) & 255);
out[188 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[23 + inPos] & -1L) >>> 32)) & 255);
out[189 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[23 + inPos] & -1L) >>> 40)) & 255);
out[190 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[23 + inPos] & -1L) >>> 48)) & 255);
out[191 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[23 + inPos] & -1L) >>> 56)) & 255);
out[192 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[24 + inPos] & -1L))) & 255);
out[193 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[24 + inPos] & -1L) >>> 8)) & 255);
out[194 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[24 + inPos] & -1L) >>> 16)) & 255);
out[195 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[24 + inPos] & -1L) >>> 24)) & 255);
out[196 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[24 + inPos] & -1L) >>> 32)) & 255);
out[197 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[24 + inPos] & -1L) >>> 40)) & 255);
out[198 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[24 + inPos] & -1L) >>> 48)) & 255);
out[199 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[24 + inPos] & -1L) >>> 56)) & 255);
out[200 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[25 + inPos] & -1L))) & 255);
out[201 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[25 + inPos] & -1L) >>> 8)) & 255);
out[202 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[25 + inPos] & -1L) >>> 16)) & 255);
out[203 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[25 + inPos] & -1L) >>> 24)) & 255);
out[204 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[25 + inPos] & -1L) >>> 32)) & 255);
out[205 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[25 + inPos] & -1L) >>> 40)) & 255);
out[206 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[25 + inPos] & -1L) >>> 48)) & 255);
out[207 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[25 + inPos] & -1L) >>> 56)) & 255);
out[208 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[26 + inPos] & -1L))) & 255);
out[209 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[26 + inPos] & -1L) >>> 8)) & 255);
out[210 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[26 + inPos] & -1L) >>> 16)) & 255);
out[211 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[26 + inPos] & -1L) >>> 24)) & 255);
out[212 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[26 + inPos] & -1L) >>> 32)) & 255);
out[213 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[26 + inPos] & -1L) >>> 40)) & 255);
out[214 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[26 + inPos] & -1L) >>> 48)) & 255);
out[215 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[26 + inPos] & -1L) >>> 56)) & 255);
out[216 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[27 + inPos] & -1L))) & 255);
out[217 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[27 + inPos] & -1L) >>> 8)) & 255);
out[218 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[27 + inPos] & -1L) >>> 16)) & 255);
out[219 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[27 + inPos] & -1L) >>> 24)) & 255);
out[220 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[27 + inPos] & -1L) >>> 32)) & 255);
out[221 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[27 + inPos] & -1L) >>> 40)) & 255);
out[222 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[27 + inPos] & -1L) >>> 48)) & 255);
out[223 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[27 + inPos] & -1L) >>> 56)) & 255);
out[224 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[28 + inPos] & -1L))) & 255);
out[225 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[28 + inPos] & -1L) >>> 8)) & 255);
out[226 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[28 + inPos] & -1L) >>> 16)) & 255);
out[227 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[28 + inPos] & -1L) >>> 24)) & 255);
out[228 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[28 + inPos] & -1L) >>> 32)) & 255);
out[229 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[28 + inPos] & -1L) >>> 40)) & 255);
out[230 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[28 + inPos] & -1L) >>> 48)) & 255);
out[231 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[28 + inPos] & -1L) >>> 56)) & 255);
out[232 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[29 + inPos] & -1L))) & 255);
out[233 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[29 + inPos] & -1L) >>> 8)) & 255);
out[234 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[29 + inPos] & -1L) >>> 16)) & 255);
out[235 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[29 + inPos] & -1L) >>> 24)) & 255);
out[236 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[29 + inPos] & -1L) >>> 32)) & 255);
out[237 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[29 + inPos] & -1L) >>> 40)) & 255);
out[238 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[29 + inPos] & -1L) >>> 48)) & 255);
out[239 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[29 + inPos] & -1L) >>> 56)) & 255);
out[240 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[30 + inPos] & -1L))) & 255);
out[241 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[30 + inPos] & -1L) >>> 8)) & 255);
out[242 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[30 + inPos] & -1L) >>> 16)) & 255);
out[243 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[30 + inPos] & -1L) >>> 24)) & 255);
out[244 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[30 + inPos] & -1L) >>> 32)) & 255);
out[245 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[30 + inPos] & -1L) >>> 40)) & 255);
out[246 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[30 + inPos] & -1L) >>> 48)) & 255);
out[247 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[30 + inPos] & -1L) >>> 56)) & 255);
out[248 + outPos] = (byte)((
// [76543210]
// [________________________________________________________76543210]
((in[31 + inPos] & -1L))) & 255);
out[249 + outPos] = (byte)((
// [76543210]
// [________________________________________________54321098________]
((in[31 + inPos] & -1L) >>> 8)) & 255);
out[250 + outPos] = (byte)((
// [76543210]
// [________________________________________32109876________________]
((in[31 + inPos] & -1L) >>> 16)) & 255);
out[251 + outPos] = (byte)((
// [76543210]
// [________________________________10987654________________________]
((in[31 + inPos] & -1L) >>> 24)) & 255);
out[252 + outPos] = (byte)((
// [76543210]
// [________________________98765432________________________________]
((in[31 + inPos] & -1L) >>> 32)) & 255);
out[253 + outPos] = (byte)((
// [76543210]
// [________________76543210________________________________________]
((in[31 + inPos] & -1L) >>> 40)) & 255);
out[254 + outPos] = (byte)((
// [76543210]
// [________54321098________________________________________________]
((in[31 + inPos] & -1L) >>> 48)) & 255);
out[255 + outPos] = (byte)((
// [76543210]
// [32109876________________________________________________________]
((in[31 + inPos] & -1L) >>> 56)) & 255);
}
public final void unpack8Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & -1L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[10 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[11 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[12 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[13 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[14 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[15 + inPos]) << 56) & -1L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[16 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[17 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[18 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[19 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[20 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[21 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[22 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[23 + inPos]) << 56) & -1L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[28 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[29 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[30 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[31 + inPos]) << 56) & -1L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[32 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[33 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[34 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[35 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[36 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[37 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[38 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[39 + inPos]) << 56) & -1L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[41 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[42 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[43 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[44 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[45 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[46 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[47 + inPos]) << 56) & -1L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[49 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[50 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[51 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[52 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[53 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[54 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[55 + inPos]) << 56) & -1L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[57 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[58 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[59 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[60 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[61 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[62 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[63 + inPos]) << 56) & -1L);
}
public final void unpack8Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & -1L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(10 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(11 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(12 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(13 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(14 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(15 + inPos)) << 56) & -1L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(16 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(17 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(18 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(19 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(20 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(21 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(22 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(23 + inPos)) << 56) & -1L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(28 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(29 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(30 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(31 + inPos)) << 56) & -1L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(32 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(33 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(34 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(35 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(36 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(37 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(38 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(39 + inPos)) << 56) & -1L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(42 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(43 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(44 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(45 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(46 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(47 + inPos)) << 56) & -1L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(50 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(51 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(52 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(53 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(54 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(55 + inPos)) << 56) & -1L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(58 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(59 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(60 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(61 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(62 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(63 + inPos)) << 56) & -1L);
}
public final void unpack32Values(final byte[] in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[ 0 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[ 1 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[ 2 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[ 3 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[ 4 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[ 5 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[ 6 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[ 7 + inPos]) << 56) & -1L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[ 8 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[ 9 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[10 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[11 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[12 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[13 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[14 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[15 + inPos]) << 56) & -1L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[16 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[17 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[18 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[19 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[20 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[21 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[22 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[23 + inPos]) << 56) & -1L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[24 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[25 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[26 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[27 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[28 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[29 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[30 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[31 + inPos]) << 56) & -1L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[32 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[33 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[34 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[35 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[36 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[37 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[38 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[39 + inPos]) << 56) & -1L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[40 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[41 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[42 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[43 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[44 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[45 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[46 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[47 + inPos]) << 56) & -1L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[48 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[49 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[50 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[51 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[52 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[53 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[54 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[55 + inPos]) << 56) & -1L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[56 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[57 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[58 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[59 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[60 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[61 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[62 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[63 + inPos]) << 56) & -1L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[64 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[65 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[66 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[67 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[68 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[69 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[70 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[71 + inPos]) << 56) & -1L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[72 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[73 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[74 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[75 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[76 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[77 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[78 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[79 + inPos]) << 56) & -1L);
out[10 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[80 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[81 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[82 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[83 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[84 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[85 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[86 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[87 + inPos]) << 56) & -1L);
out[11 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[88 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[89 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[90 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[91 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[92 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[93 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[94 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[95 + inPos]) << 56) & -1L);
out[12 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[96 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[97 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[98 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[99 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[100 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[101 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[102 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[103 + inPos]) << 56) & -1L);
out[13 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[104 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[105 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[106 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[107 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[108 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[109 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[110 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[111 + inPos]) << 56) & -1L);
out[14 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[112 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[113 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[114 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[115 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[116 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[117 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[118 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[119 + inPos]) << 56) & -1L);
out[15 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[120 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[121 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[122 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[123 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[124 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[125 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[126 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[127 + inPos]) << 56) & -1L);
out[16 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[128 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[129 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[130 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[131 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[132 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[133 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[134 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[135 + inPos]) << 56) & -1L);
out[17 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[136 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[137 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[138 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[139 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[140 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[141 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[142 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[143 + inPos]) << 56) & -1L);
out[18 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[144 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[145 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[146 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[147 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[148 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[149 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[150 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[151 + inPos]) << 56) & -1L);
out[19 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[152 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[153 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[154 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[155 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[156 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[157 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[158 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[159 + inPos]) << 56) & -1L);
out[20 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[160 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[161 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[162 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[163 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[164 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[165 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[166 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[167 + inPos]) << 56) & -1L);
out[21 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[168 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[169 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[170 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[171 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[172 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[173 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[174 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[175 + inPos]) << 56) & -1L);
out[22 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[176 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[177 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[178 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[179 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[180 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[181 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[182 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[183 + inPos]) << 56) & -1L);
out[23 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[184 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[185 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[186 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[187 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[188 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[189 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[190 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[191 + inPos]) << 56) & -1L);
out[24 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[192 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[193 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[194 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[195 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[196 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[197 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[198 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[199 + inPos]) << 56) & -1L);
out[25 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[200 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[201 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[202 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[203 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[204 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[205 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[206 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[207 + inPos]) << 56) & -1L);
out[26 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[208 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[209 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[210 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[211 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[212 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[213 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[214 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[215 + inPos]) << 56) & -1L);
out[27 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[216 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[217 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[218 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[219 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[220 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[221 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[222 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[223 + inPos]) << 56) & -1L);
out[28 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[224 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[225 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[226 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[227 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[228 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[229 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[230 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[231 + inPos]) << 56) & -1L);
out[29 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[232 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[233 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[234 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[235 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[236 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[237 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[238 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[239 + inPos]) << 56) & -1L);
out[30 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[240 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[241 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[242 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[243 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[244 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[245 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[246 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[247 + inPos]) << 56) & -1L);
out[31 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in[248 + inPos]) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in[249 + inPos]) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in[250 + inPos]) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in[251 + inPos]) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in[252 + inPos]) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in[253 + inPos]) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in[254 + inPos]) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in[255 + inPos]) << 56) & -1L);
}
public final void unpack32Values(final ByteBuffer in, final int inPos, final long[] out, final int outPos) {
out[ 0 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get( 0 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get( 1 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get( 2 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get( 3 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get( 4 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get( 5 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get( 6 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get( 7 + inPos)) << 56) & -1L);
out[ 1 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get( 8 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get( 9 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(10 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(11 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(12 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(13 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(14 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(15 + inPos)) << 56) & -1L);
out[ 2 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(16 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(17 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(18 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(19 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(20 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(21 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(22 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(23 + inPos)) << 56) & -1L);
out[ 3 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(24 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(25 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(26 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(27 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(28 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(29 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(30 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(31 + inPos)) << 56) & -1L);
out[ 4 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(32 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(33 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(34 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(35 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(36 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(37 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(38 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(39 + inPos)) << 56) & -1L);
out[ 5 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(40 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(41 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(42 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(43 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(44 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(45 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(46 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(47 + inPos)) << 56) & -1L);
out[ 6 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(48 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(49 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(50 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(51 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(52 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(53 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(54 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(55 + inPos)) << 56) & -1L);
out[ 7 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(56 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(57 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(58 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(59 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(60 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(61 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(62 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(63 + inPos)) << 56) & -1L);
out[ 8 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(64 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(65 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(66 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(67 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(68 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(69 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(70 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(71 + inPos)) << 56) & -1L);
out[ 9 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(72 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(73 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(74 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(75 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(76 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(77 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(78 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(79 + inPos)) << 56) & -1L);
out[10 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(80 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(81 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(82 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(83 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(84 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(85 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(86 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(87 + inPos)) << 56) & -1L);
out[11 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(88 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(89 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(90 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(91 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(92 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(93 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(94 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(95 + inPos)) << 56) & -1L);
out[12 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(96 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(97 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(98 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(99 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(100 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(101 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(102 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(103 + inPos)) << 56) & -1L);
out[13 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(104 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(105 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(106 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(107 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(108 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(109 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(110 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(111 + inPos)) << 56) & -1L);
out[14 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(112 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(113 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(114 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(115 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(116 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(117 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(118 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(119 + inPos)) << 56) & -1L);
out[15 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(120 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(121 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(122 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(123 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(124 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(125 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(126 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(127 + inPos)) << 56) & -1L);
out[16 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(128 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(129 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(130 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(131 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(132 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(133 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(134 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(135 + inPos)) << 56) & -1L);
out[17 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(136 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(137 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(138 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(139 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(140 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(141 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(142 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(143 + inPos)) << 56) & -1L);
out[18 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(144 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(145 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(146 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(147 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(148 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(149 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(150 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(151 + inPos)) << 56) & -1L);
out[19 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(152 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(153 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(154 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(155 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(156 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(157 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(158 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(159 + inPos)) << 56) & -1L);
out[20 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(160 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(161 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(162 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(163 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(164 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(165 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(166 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(167 + inPos)) << 56) & -1L);
out[21 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(168 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(169 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(170 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(171 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(172 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(173 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(174 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(175 + inPos)) << 56) & -1L);
out[22 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(176 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(177 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(178 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(179 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(180 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(181 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(182 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(183 + inPos)) << 56) & -1L);
out[23 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(184 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(185 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(186 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(187 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(188 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(189 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(190 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(191 + inPos)) << 56) & -1L);
out[24 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(192 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(193 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(194 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(195 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(196 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(197 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(198 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(199 + inPos)) << 56) & -1L);
out[25 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(200 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(201 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(202 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(203 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(204 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(205 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(206 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(207 + inPos)) << 56) & -1L);
out[26 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(208 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(209 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(210 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(211 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(212 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(213 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(214 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(215 + inPos)) << 56) & -1L);
out[27 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(216 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(217 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(218 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(219 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(220 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(221 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(222 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(223 + inPos)) << 56) & -1L);
out[28 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(224 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(225 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(226 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(227 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(228 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(229 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(230 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(231 + inPos)) << 56) & -1L);
out[29 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(232 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(233 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(234 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(235 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(236 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(237 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(238 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(239 + inPos)) << 56) & -1L);
out[30 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(240 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(241 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(242 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(243 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(244 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(245 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(246 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(247 + inPos)) << 56) & -1L);
out[31 + outPos] =
// [76543210]
// [________________________________________________________76543210]
((((long)in.get(248 + inPos)) ) & 255L)
| // [76543210]
// [________________________________________________54321098________]
((((long)in.get(249 + inPos)) << 8) & 65535L)
| // [76543210]
// [________________________________________32109876________________]
((((long)in.get(250 + inPos)) << 16) & 16777215L)
| // [76543210]
// [________________________________10987654________________________]
((((long)in.get(251 + inPos)) << 24) & 4294967295L)
| // [76543210]
// [________________________98765432________________________________]
((((long)in.get(252 + inPos)) << 32) & 1099511627775L)
| // [76543210]
// [________________76543210________________________________________]
((((long)in.get(253 + inPos)) << 40) & 281474976710655L)
| // [76543210]
// [________54321098________________________________________________]
((((long)in.get(254 + inPos)) << 48) & 72057594037927935L)
| // [76543210]
// [32109876________________________________________________________]
((((long)in.get(255 + inPos)) << 56) & -1L);
}
}
}