def read_varint64(self):
        """Reads a varint from the stream, interprets this varint
        as a signed, 64-bit integer, and returns the integer.
        """
        i = self.read_var_uint64()
        if i > wire_format.INT64_MAX:
            i -= (1 << 64)
        return i