private static boolean arrayEquals(byte[] a1, int offset, int len, byte[] a2) {
    for (int i = 0; i < len; i++) {
      if (a1[offset + i] != a2[i]) {
        return false;
      }
    }
    return true;
  }
private static boolean arrayEquals(byte[] a1, int offset, int len, byte[] a2)