code: def _pigpio_aio_command_ext(self, cmd, p1, p2, p3, extents, rl=True):
          
          with (yield from self._lock):
              ext = bytearray(struct.pack('IIII', cmd, p1, p2, p3))
              for x in extents:
                  if isinstance(x, str):
                      ext.extend(_b(x))
                  else:
                      ext.extend(x)
              self._loop.sock_sendall(self.s, ext)
              response = yield from self._loop.sock_recv(self.s, 16)
              _, res = struct.unpack('12sI', response)
              return res
docs: Runs an extended pigpio socket command.
  
              sl:= command socket and lock.
             cmd:= the command to be executed.
              p1:= command parameter 1 (if applicable).
              p2:= command parameter 2 (if applicable).
              p3:= total size in bytes of following extents
          extents:= additional data blocks