def _read_http_goaway(self, size, kind, flag):
_dlen = size - <NUM_LIT:8><EOL>if _dlen < <NUM_LIT:0>:<EOL><INDENT>raise ProtocolError(f'<STR_LIT>', quiet=True)<EOL><DEDENT>if any((int(bit, base=<NUM_LIT:2>) for bit in flag)):<EOL><INDENT>raise ProtocolError(f'<STR_LIT>', quiet=True)<EOL><DEDENT>_rsid = self._read_binary(<NUM_LIT:4>)<EOL>_code = self._read_unpack(<NUM_LIT:4>)<EOL>_data = self._read_fileng(_dlen) or None<EOL>if int(_rsid[<NUM_LIT:0>], base=<NUM_LIT:2>):<EOL><INDENT>raise ProtocolError(f'<STR_LIT>', quiet=True)<EOL><DEDENT>data = dict(<EOL>flags=None,<EOL>last_sid=int(_rsid[<NUM_LIT:1>:], base=<NUM_LIT:2>),<EOL>error=_ERROR_CODE.get(_code, _code),<EOL>data=_data,<EOL>)<EOL>return data<EOL>
Read HTTP/2 GOAWAY frames.

        Structure of HTTP/2 GOAWAY frame [RFC 7540]:
            +-----------------------------------------------+
            |                 Length (24)                   |
            +---------------+---------------+---------------+
            |   Type (8)    |   Flags (8)   |
            +-+-------------+---------------+-------------------------------+
            |R|                 Stream Identifier (31)                      |
            +-+-------------+---------------+-------------------------------+
            |R|                  Last-Stream-ID (31)                        |
            +-+-------------------------------------------------------------+
            |                      Error Code (32)                          |
            +---------------------------------------------------------------+
            |                  Additional Debug Data (*)                    |
            +---------------------------------------------------------------+

            Octets      Bits        Name                    Description
              0           0     http.length             Length
              3          24     http.type               Type (2)
              4          32     http.flags              Flags
              5          40     -                       Reserved
              5          41     http.sid                Stream Identifier
              9          72     -                       Reserved
              9          73     http.last_sid           Last Stream ID
              13        104     http.error              Error Code
              17        136     http.data               Additional Debug Data (Optional)