static byte[] byteArrayFromLongs_bigEndian(long[] a) { ret byteArrayFromLongs_bigEndian(a, 0, l(a)); } static byte[] byteArrayFromLongs_bigEndian(long[] a, int from, int to) { byte[] b = new byte[(to-from)*8]; for (int i = 0; i < a.length; i++) { long s = a[from+i]; b[i*2] = (byte) (s >> 56); b[i*2+1] = (byte) (s >> 48); b[i*2+2] = (byte) (s >> 40); b[i*2+3] = (byte) (s >> 32); b[i*2+4] = (byte) (s >> 24); b[i*2+5] = (byte) (s >> 16); b[i*2+6] = (byte) (s >> 8); b[i*2+7] = (byte) s; } ret b; }