code: def read_ipv6_route(self, length, extension):
          
          if length is None:
              length = len(self)
  
          _next = self._read_protos(1)
          _hlen = self._read_unpack(1)
          _type = self._read_unpack(1)
          _left = self._read_unpack(1)
  
          ipv6_route = dict(
              next=_next,
              length=(_hlen + 1) * 8,
              type=_ROUTING_TYPE.get(_type, 'Unassigned'),
              seg_left=_left,
          )
  
          _dlen = _hlen * 8 - 4
          if _dlen:
              _func = _ROUTE_PROC.get(_type, 'none')
              _data = eval(f'self._read_data_type_{_func}')(_dlen)
              ipv6_route.update(_data)
  
          length -= ipv6_route['length']
          ipv6_route['packet'] = self._read_packet(header=ipv6_route['length'], payload=length)
  
          if extension:
              self._protos = None
              return ipv6_route
          return self._decode_next_layer(ipv6_route, _next, length)
docs: Read Routing Header for IPv6.
  
          Structure of IPv6-Route header [RFC 8200][RFC 5095]:
              +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              |  Next Header  |  Hdr Ext Len  |  Routing Type | Segments Left |
              +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
              |                                                               |
              .                                                               .
              .                       type-specific data                      .
              .                                                               .
              |                                                               |
              +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  
              Octets      Bits        Name                    Description
                0           0     route.next              Next Header
                1           8     route.length            Header Extensive Length
                2          16     route.type              Routing Type
                3          24     route.seg_left          Segments Left
                4          32     route.data              Type-Specific Data