@Test
public void testGetPartArray2D(){

  int k = 8, m = 3;
  int n = k + m;
  int len = 8;
  byte[][] bb = new byte[n][len];
  byte[][] a = new byte[k][len];
  byte[][] b = new byte[m][len];
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < len; ++j) {
      if (i < k) {
        a[i][j] = (byte) (i + j);
      } else {
        b[i - k][j] = (byte) (i + j);
      }
      bb[i][j] = (byte) (i + j);
    }
  }
  byte[][] headK = DataUtil.getPartArray2D(bb, k);
  assertArray2DEquals(a, headK);
  byte[][] tailM = DataUtil.getPartArray2D(bb, -m);
  assertArray2DEquals(b, tailM);
}