question: private static long readLong ( InputStream in ) throws IOException { int b0 = in . read ( ) ; int b1 = in . read ( ) ; int b2 = in . read ( ) ; int b3 = in . read ( ) ; if ( ( b0 | b1 | b2 | b3 ) == - 1 ) { throw new EOFException ( ) ; } int upper = ( b0 << 24 ) | ( b1 << 16 ) | ( b2 << 8 ) | b3 ; b0 = in . read ( ) ; b1 = in . read ( ) ; b2 = in . read ( ) ; b3 = in . read ( ) ; if ( ( b0 | b1 | b2 | b3 ) == - 1 ) { throw new EOFException ( ) ; } int lower = ( b0 << 24 ) | ( b1 << 16 ) | ( b2 << 8 ) | b3 ; return ( ( long ) upper << 32 ) | ( lower & 0xFFFFFFFFL ) ; }
target:  Read a long value from an InputStream in big-endian byte order.