docs: async def read(self, amt=None):
          """Read at most amt bytes from the stream.
  
          If the amt argument is omitted, read all data.
          """
          # botocore to aiohttp mapping
          chunk = await self.__wrapped__.read(amt if amt is not None else -1)
          self._self_amount_read += len(chunk)
          if amt is None or (not chunk and amt > 0):
              # If the server sends empty contents or
              # we ask to read all of the contents, then we know
              # we need to verify the content length.
              self._verify_content_length()
          return chunk