def _read_opt_pdm(self, code, *, desc):
_type = self._read_opt_type(code)<EOL>_size = self._read_unpack(<NUM_LIT:1>)<EOL>if _size != <NUM_LIT:10>:<EOL><INDENT>raise ProtocolError(f'<STR_LIT>')<EOL><DEDENT>_stlr = self._read_unpack(<NUM_LIT:1>)<EOL>_stls = self._read_unpack(<NUM_LIT:1>)<EOL>_psnt = self._read_unpack(<NUM_LIT:2>)<EOL>_psnl = self._read_unpack(<NUM_LIT:2>)<EOL>_dtlr = self._read_unpack(<NUM_LIT:2>)<EOL>_dtls = self._read_unpack(<NUM_LIT:2>)<EOL>opt = dict(<EOL>desc=desc,<EOL>type=_type,<EOL>length=_size + <NUM_LIT:2>,<EOL>scaledtlr=datetime.timedelta(seconds=_stlr),<EOL>scaledtls=datetime.timedelta(seconds=_stls),<EOL>psntp=_psnt,<EOL>psnlr=_psnl,<EOL>deltatlr=datetime.timedelta(seconds=_dtlr),<EOL>deltatls=datetime.timedelta(seconds=_dtls),<EOL>)<EOL>return opt<EOL>
Read HOPOPT PDM option.

        Structure of HOPOPT PDM option [RFC 8250]:
             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
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |  Option Type  | Option Length |    ScaleDTLR  |     ScaleDTLS |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |   PSN This Packet             |  PSN Last Received            |
            |-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
            |   Delta Time Last Received    |  Delta Time Last Sent         |
            +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Octets      Bits        Name                    Description
              0           0     hopopt.pdm.type         Option Type
              0           0     hopopt.pdm.type.value   Option Number
              0           0     hopopt.pdm.type.action  Action (00)
              0           2     hopopt.pdm.type.change  Change Flag (0)
              1           8     hopopt.pdm.length       Length of Option Data
              2          16     hopopt.pdm.scaledtlr    Scale Delta Time Last Received
              3          24     hopopt.pdm.scaledtls    Scale Delta Time Last Sent
              4          32     hopopt.pdm.psntp        Packet Sequence Number This Packet
              6          48     hopopt.pdm.psnlr        Packet Sequence Number Last Received
              8          64     hopopt.pdm.deltatlr     Delta Time Last Received
              10         80     hopopt.pdm.deltatls     Delta Time Last Sent