<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def read_varint32(self):
 """Reads a varint from the stream, interprets this varint as a signed, 32-bit integer, and returns the integer. """

        i = self.read_varint64()
        if not wire_format.INT32_MIN <= i <= wire_format.INT32_MAX:
            raise errors.DecodeError('Value out of range for int32: %d' % i)
        return int(i)