docs: public static long readUnsignedLong(byte[] bytes, int offset) {
        byte b = bytes[offset++];
        long i = b & 0x7F;
        for (int shift = 7; (b & 0x80) != 0; shift += 7) {
           b = bytes[offset++];
           i |= (b & 0x7FL) << shift;
        }
        return i;
     }