def take_msb_bytes(read, crc32=None):
 ret = []
 while ((len(ret) == 0) or (ret[(-1)] & 128)):
  b = read(1)
  if (crc32 is not None):
   crc32 = binascii.crc32(b, crc32)
  ret.append(ord(b[:1]))
 return (ret, crc32)

def take_msb_bytes ( read , crc32 = None ) : ret = [ ] while ( ( len ( ret ) == 0 ) or ( ret [ ( - 1 ) ] & 128 ) ) : b = read ( 1 ) if ( crc32 is not None ) : crc32 = binascii . crc32 ( b , crc32 ) ret . append ( ord ( b [ : 1 ] ) ) return ( ret , crc32 )
read bytes marked with most significant bit .