def _read_http_ping(self, size, kind, flag):
if size != <NUM_LIT:8>:<EOL><INDENT>raise ProtocolError(f'<STR_LIT>', quiet=True)<EOL><DEDENT>_flag = dict(<EOL>ACK=False,      <EOL>)<EOL>for index, bit in enumerate(flag):<EOL><INDENT>if index == <NUM_LIT:0> and bit:<EOL><INDENT>_flag['<STR_LIT>'] = True<EOL><DEDENT>elif bit:<EOL><INDENT>raise ProtocolError(f'<STR_LIT>', quiet=True)<EOL><DEDENT>else:<EOL><INDENT>continue<EOL><DEDENT><DEDENT>_data = self._read_fileng(<NUM_LIT:8>)<EOL>data = dict(<EOL>flags=_flag,<EOL>data=_data,<EOL>)<EOL>return data<EOL>
Read HTTP/2 PING frames.

        Structure of HTTP/2 PING frame [RFC 7540]:
            +-----------------------------------------------+
            |                 Length (24)                   |
            +---------------+---------------+---------------+
            |   Type (8)    |   Flags (8)   |
            +-+-------------+---------------+-------------------------------+
            |R|                 Stream Identifier (31)                      |
            +---------------------------------------------------------------+
            |                                                               |
            |                      Opaque Data (64)                         |
            |                                                               |
            +---------------------------------------------------------------+

            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     http.data               Opaque Data