def _read_para_ack_data(self, code, cbit, clen, *, desc, length, version):
if clen % <NUM_LIT:4> != <NUM_LIT:0>:<EOL><INDENT>raise ProtocolError(f'<STR_LIT>')<EOL><DEDENT>_ackn = list()<EOL>for _ in range(clen // <NUM_LIT:4>):<EOL><INDENT>_ackn.append(self._read_unpack(<NUM_LIT:4>))<EOL><DEDENT>ack_data = dict(<EOL>type=desc,<EOL>critical=cbit,<EOL>length=clen,<EOL>ack=tuple(_ackn),<EOL>)<EOL>return ack_data<EOL>
Read HIP ACK_DATA parameter.

        Structure of HIP ACK_DATA parameter [RFC 6078]:
             0                   1                   2                   3
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |             Type              |             Length            |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |                     Acked Sequence number                     /
            /                                                               /
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Octets      Bits        Name                            Description
              0           0     ack_data.type                   Parameter Type
              1          15     ack_data.critical               Critical Bit
              2          16     ack_data.length                 Length of Contents
              4          32     ack_data.ack                    Acked Sequence number