{
    "content": [
        {
            "type": "text",
            "text": "# _dbus_bindings (pydoc)\n\n**Summary:** dbusbindings\n\n## Section Outline\n\n- **NAME** (2 lines)\n- **DESCRIPTION** (5 lines)\n- **CLASSES** (35 lines) — 25 subsections\n  - class Array (173 lines)\n  - class Boolean (282 lines)\n  - class Byte (287 lines)\n  - class ByteArray (429 lines)\n  - class Connection (173 lines)\n  - class Dictionary (165 lines)\n  - class Double (218 lines)\n  - class ErrorMessage (257 lines)\n  - class Int16 (280 lines)\n  - class Int32 (280 lines)\n  - class Int64 (284 lines)\n  - class Message (244 lines)\n  - class MethodCallMessage (270 lines)\n  - class MethodReturnMessage (257 lines)\n  - class NativeMainLoop (3 lines)\n  - class ObjectPath (436 lines)\n  - class PendingCall (28 lines)\n  - class SignalMessage (260 lines)\n  - class Signature (442 lines)\n  - class String (446 lines)\n  - class Struct (111 lines)\n  - class UInt16 (280 lines)\n  - class UInt32 (280 lines)\n  - class UInt64 (280 lines)\n  - class UnixFd (49 lines)\n- **FUNCTIONS** (1 lines) — 7 subsections\n  - get_default_main_loop (10 lines)\n  - set_default_main_loop (16 lines)\n  - validate_bus_name (16 lines)\n  - validate_error_name (6 lines)\n  - validate_interface_name (6 lines)\n  - validate_member_name (6 lines)\n  - validate_object_path (6 lines)\n- **DATA** (63 lines)\n- **VERSION** (2 lines)\n- **FILE** (3 lines)\n\n## Full Content\n\n### NAME\n\ndbusbindings\n\n### DESCRIPTION\n\nLow-level Python bindings for libdbus. Don't use this module directly -\nthe public API is provided by the `dbus`, `dbus.service`, `dbus.mainloop`\nand `dbus.mainloop.glib` modules, with a lower-level API provided by the\n`dbus.lowlevel` module.\n\n### CLASSES\n\nBytesBase(builtins.bytes)\ndbus.ByteArray\nFloatBase(builtins.float)\ndbus.Double\nLongBase(builtins.int)\ndbus.Boolean\ndbus.Byte\ndbus.Int16\ndbus.Int32\ndbus.Int64\ndbus.UInt16\ndbus.UInt32\ndbus.UInt64\nStrBase(builtins.str)\ndbus.ObjectPath\ndbus.Signature\nbuiltins.dict(builtins.object)\ndbus.Dictionary\nbuiltins.list(builtins.object)\ndbus.Array\nbuiltins.object\nConnection\ndbus.UnixFd\ndbus.lowlevel.Message\ndbus.lowlevel.ErrorMessage\ndbus.lowlevel.MethodCallMessage\ndbus.lowlevel.MethodReturnMessage\ndbus.lowlevel.SignalMessage\ndbus.lowlevel.PendingCall\ndbus.mainloop.NativeMainLoop\nbuiltins.str(builtins.object)\ndbus.String\nbuiltins.tuple(builtins.object)\ndbus.Struct\n\n#### class Array\n\n|  Array(iterable=(), /)\n|\n|  dbus.Array([iterable][, signature][, variantlevel])\n|\n|  An array of similar items, implemented as a subtype of list.\n|\n|  As currently implemented, an Array behaves just like a list, but\n|  with the addition of a ``signature`` property set by the constructor;\n|  conversion of its items to D-Bus types is only done when it's sent in\n|  a Message. This might change in future so validation is done earlier.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  ``signature`` is the D-Bus signature string for a single element of the\n|  array, or None. If not None it must represent a single complete type, the\n|  type of a single array item; the signature of the whole Array may be\n|  obtained by prepending ``a`` to the given signature.\n|\n|  If None (the default), when the Array is sent over\n|  D-Bus, the item signature will be guessed from the first element.\n|\n|  Method resolution order:\n|      Array\n|      builtins.list\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors defined here:\n|\n|  signature\n|      The D-Bus signature of each element of this Array (a Signature instance)\n|\n|  variantlevel\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an array, this is represented in Python by an\n|      Array with variantlevel==2.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.list:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  delitem(self, key, /)\n|      Delete self[key].\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  getitem(...)\n|      x.getitem(y) <==> x[y]\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  iadd(self, value, /)\n|      Implement self+=value.\n|\n|  imul(self, value, /)\n|      Implement self*=value.\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  reversed(self, /)\n|      Return a reverse iterator over the list.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  setitem(self, key, value, /)\n|      Set self[key] to value.\n|\n|  sizeof(self, /)\n|      Return the size of the list in memory, in bytes.\n|\n|  append(self, object, /)\n|      Append object to the end of the list.\n|\n|  clear(self, /)\n|      Remove all items from list.\n|\n|  copy(self, /)\n|      Return a shallow copy of the list.\n|\n|  count(self, value, /)\n|      Return number of occurrences of value.\n|\n|  extend(self, iterable, /)\n|      Extend list by appending elements from the iterable.\n|\n|  index(self, value, start=0, stop=9223372036854775807, /)\n|      Return first index of value.\n|\n|      Raises ValueError if the value is not present.\n|\n|  insert(self, index, object, /)\n|      Insert object before index.\n|\n|  pop(self, index=-1, /)\n|      Remove and return item at index (default last).\n|\n|      Raises IndexError if list is empty or index is out of range.\n|\n|  remove(self, value, /)\n|      Remove first occurrence of value.\n|\n|      Raises ValueError if the value is not present.\n|\n|  reverse(self, /)\n|      Reverse *IN PLACE*.\n|\n|  sort(self, /, *, key=None, reverse=False)\n|      Sort the list in ascending order and return None.\n|\n|      The sort is in-place (i.e. the list itself is modified) and stable (i.e. the\n|      order of two equal elements is maintained).\n|\n|      If a key function is given, apply it once to each list item and sort them,\n|      ascending or descending, according to their function values.\n|\n|      The reverse flag can be set to sort in descending order.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.list:\n|\n|  classgetitem(...) from builtins.type\n|      See PEP 585\n|\n|  ----------------------------------------------------------------------\n|  Data and other attributes inherited from builtins.list:\n|\n|  hash = None\n\n#### class Boolean\n\n|  dbus.Boolean(value: bool[, variantlevel: int])\n|\n|  A boolean, represented as a subtype of ``int`` (not ``bool``, because ``bool``\n|  cannot be subclassed).\n|\n|  ``value`` is converted to 0 or 1 as if by ``int(bool(value))``.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a boolean, this is represented in Python by a\n|      Boolean with variantlevel==2.\n|\n|  Method resolution order:\n|      Boolean\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class Byte\n\n|  dbus.Byte(integer or bytes of length 1[, variantlevel])\n|\n|  An unsigned byte: a subtype of int, with range restricted to [0, 255].\n|\n|  A Byte `b` may be converted to a ``str`` of length 1 via\n|  ``str(b) == chr(b)`` (Python 2) or to a ``bytes`` of length 1\n|  via ``bytes([b])`` (Python 3).\n|\n|  Most of the time you don't want to use this class - it mainly exists\n|  for symmetry with the other D-Bus types. See `dbus.ByteArray` for a\n|  better way to handle arrays of Byte.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a byte, this is represented in Python by a\n|      Byte with variantlevel==2.\n|\n|  Method resolution order:\n|      Byte\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class ByteArray\n\n|  ByteArray(str)\n|\n|  ByteArray is a subtype of :py:class:`bytes` (an alias for\n|  :py:class:`str` in Python 2 but a distinct type in Python 3)\n|  which can be used when you want an\n|  efficient immutable representation of a D-Bus byte array (signature ``ay``).\n|\n|  By default, when byte arrays are converted from D-Bus to Python, they\n|  come out as a `dbus.Array` of `dbus.Byte`. This is just for symmetry with\n|  the other D-Bus types - in practice, what you usually want is the byte\n|  array represented as a string, using this class. To get this, pass the\n|  ``bytearrays=True`` keyword argument to any of these methods:\n|\n|  * any D-Bus method proxy, or ``connecttosignal``, on the objects returned\n|    by `Bus.getobject`\n|  * any D-Bus method on a `dbus.Interface`\n|  * `dbus.Interface.connecttosignal`\n|  * `Bus.addsignalreceiver`\n|\n|  Import via::\n|\n|     from dbus import ByteArray\n|\n|  Constructor::\n|\n|     ByteArray(str)\n|\n|  Method resolution order:\n|      ByteArray\n|      dbusbindings.BytesBase\n|      builtins.bytes\n|      builtins.object\n|\n|  Methods inherited from dbusbindings.BytesBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from dbusbindings.BytesBase:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.bytes:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getitem(self, key, /)\n|      Return self[key].\n|\n|  getnewargs(...)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  capitalize(...)\n|      B.capitalize() -> copy of B\n|\n|      Return a copy of B with only its first character capitalized (ASCII)\n|      and the rest lower-cased.\n|\n|  center(self, width, fillchar=b' ', /)\n|      Return a centered string of length width.\n|\n|      Padding is done using the specified fill character.\n|\n|  count(...)\n|      B.count(sub[, start[, end]]) -> int\n|\n|      Return the number of non-overlapping occurrences of subsection sub in\n|      bytes B[start:end].  Optional arguments start and end are interpreted\n|      as in slice notation.\n|\n|  decode(self, /, encoding='utf-8', errors='strict')\n|      Decode the bytes using the codec registered for encoding.\n|\n|      encoding\n|        The encoding with which to decode the bytes.\n|      errors\n|        The error handling scheme to use for the handling of decoding errors.\n|        The default is 'strict' meaning that decoding errors raise a\n|        UnicodeDecodeError. Other possible values are 'ignore' and 'replace'\n|        as well as any other name registered with codecs.registererror that\n|        can handle UnicodeDecodeErrors.\n|\n|  endswith(...)\n|      B.endswith(suffix[, start[, end]]) -> bool\n|\n|      Return True if B ends with the specified suffix, False otherwise.\n|      With optional start, test B beginning at that position.\n|      With optional end, stop comparing B at that position.\n|      suffix can also be a tuple of bytes to try.\n|\n|  expandtabs(self, /, tabsize=8)\n|      Return a copy where all tab characters are expanded using spaces.\n|\n|      If tabsize is not given, a tab size of 8 characters is assumed.\n|\n|  find(...)\n|      B.find(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in B where subsection sub is found,\n|      such that sub is contained within B[start,end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  hex(...)\n|      Create a string of hexadecimal numbers from a bytes object.\n|\n|        sep\n|          An optional single character or byte to separate hex bytes.\n|        bytespersep\n|          How many bytes between separators.  Positive values count from the\n|          right, negative values count from the left.\n|\n|      Example:\n|      >>> value = b'\\xb9\\x01\\xef'\n|      >>> value.hex()\n|      'b901ef'\n|      >>> value.hex(':')\n|      'b9:01:ef'\n|      >>> value.hex(':', 2)\n|      'b9:01ef'\n|      >>> value.hex(':', -2)\n|      'b901:ef'\n|\n|  index(...)\n|      B.index(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in B where subsection sub is found,\n|      such that sub is contained within B[start,end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the subsection is not found.\n|\n|  isalnum(...)\n|      B.isalnum() -> bool\n|\n|      Return True if all characters in B are alphanumeric\n|      and there is at least one character in B, False otherwise.\n|\n|  isalpha(...)\n|      B.isalpha() -> bool\n|\n|      Return True if all characters in B are alphabetic\n|      and there is at least one character in B, False otherwise.\n|\n|  isascii(...)\n|      B.isascii() -> bool\n|\n|      Return True if B is empty or all characters in B are ASCII,\n|      False otherwise.\n|\n|  isdigit(...)\n|      B.isdigit() -> bool\n|\n|      Return True if all characters in B are digits\n|      and there is at least one character in B, False otherwise.\n|\n|  islower(...)\n|      B.islower() -> bool\n|\n|      Return True if all cased characters in B are lowercase and there is\n|      at least one cased character in B, False otherwise.\n|\n|  isspace(...)\n|      B.isspace() -> bool\n|\n|      Return True if all characters in B are whitespace\n|      and there is at least one character in B, False otherwise.\n|\n|  istitle(...)\n|      B.istitle() -> bool\n|\n|      Return True if B is a titlecased string and there is at least one\n|      character in B, i.e. uppercase characters may only follow uncased\n|      characters and lowercase characters only cased ones. Return False\n|      otherwise.\n|\n|  isupper(...)\n|      B.isupper() -> bool\n|\n|      Return True if all cased characters in B are uppercase and there is\n|      at least one cased character in B, False otherwise.\n|\n|  join(self, iterableofbytes, /)\n|      Concatenate any number of bytes objects.\n|\n|      The bytes whose method is called is inserted in between each pair.\n|\n|      The result is returned as a new bytes object.\n|\n|      Example: b'.'.join([b'ab', b'pq', b'rs']) -> b'ab.pq.rs'.\n|\n|  ljust(self, width, fillchar=b' ', /)\n|      Return a left-justified string of length width.\n|\n|      Padding is done using the specified fill character.\n|\n|  lower(...)\n|      B.lower() -> copy of B\n|\n|      Return a copy of B with all ASCII characters converted to lowercase.\n|\n|  lstrip(self, bytes=None, /)\n|      Strip leading bytes contained in the argument.\n|\n|      If the argument is omitted or None, strip leading  ASCII whitespace.\n|\n|  partition(self, sep, /)\n|      Partition the bytes into three parts using the given separator.\n|\n|      This will search for the separator sep in the bytes. If the separator is found,\n|      returns a 3-tuple containing the part before the separator, the separator\n|      itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing the original bytes\n|      object and two empty bytes objects.\n|\n|  removeprefix(self, prefix, /)\n|      Return a bytes object with the given prefix string removed if present.\n|\n|      If the bytes starts with the prefix string, return bytes[len(prefix):].\n|      Otherwise, return a copy of the original bytes.\n|\n|  removesuffix(self, suffix, /)\n|      Return a bytes object with the given suffix string removed if present.\n|\n|      If the bytes ends with the suffix string and that suffix is not empty,\n|      return bytes[:-len(prefix)].  Otherwise, return a copy of the original\n|      bytes.\n|\n|  replace(self, old, new, count=-1, /)\n|      Return a copy with all occurrences of substring old replaced by new.\n|\n|        count\n|          Maximum number of occurrences to replace.\n|          -1 (the default value) means replace all occurrences.\n|\n|      If the optional argument count is given, only the first count occurrences are\n|      replaced.\n|\n|  rfind(...)\n|      B.rfind(sub[, start[, end]]) -> int\n|\n|      Return the highest index in B where subsection sub is found,\n|      such that sub is contained within B[start,end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  rindex(...)\n|      B.rindex(sub[, start[, end]]) -> int\n|\n|      Return the highest index in B where subsection sub is found,\n|      such that sub is contained within B[start,end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raise ValueError when the subsection is not found.\n|\n|  rjust(self, width, fillchar=b' ', /)\n|      Return a right-justified string of length width.\n|\n|      Padding is done using the specified fill character.\n|\n|  rpartition(self, sep, /)\n|      Partition the bytes into three parts using the given separator.\n|\n|      This will search for the separator sep in the bytes, starting at the end. If\n|      the separator is found, returns a 3-tuple containing the part before the\n|      separator, the separator itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing two empty bytes\n|      objects and the original bytes object.\n|\n|  rsplit(self, /, sep=None, maxsplit=-1)\n|      Return a list of the sections in the bytes, using sep as the delimiter.\n|\n|        sep\n|          The delimiter according which to split the bytes.\n|          None (the default value) means split on ASCII whitespace characters\n|          (space, tab, return, newline, formfeed, vertical tab).\n|        maxsplit\n|          Maximum number of splits to do.\n|          -1 (the default value) means no limit.\n|\n|      Splitting is done starting at the end of the bytes and working to the front.\n|\n|  rstrip(self, bytes=None, /)\n|      Strip trailing bytes contained in the argument.\n|\n|      If the argument is omitted or None, strip trailing ASCII whitespace.\n|\n|  split(self, /, sep=None, maxsplit=-1)\n|      Return a list of the sections in the bytes, using sep as the delimiter.\n|\n|      sep\n|        The delimiter according which to split the bytes.\n|        None (the default value) means split on ASCII whitespace characters\n|        (space, tab, return, newline, formfeed, vertical tab).\n|      maxsplit\n|        Maximum number of splits to do.\n|        -1 (the default value) means no limit.\n|\n|  splitlines(self, /, keepends=False)\n|      Return a list of the lines in the bytes, breaking at line boundaries.\n|\n|      Line breaks are not included in the resulting list unless keepends is given and\n|      true.\n|\n|  startswith(...)\n|      B.startswith(prefix[, start[, end]]) -> bool\n|\n|      Return True if B starts with the specified prefix, False otherwise.\n|      With optional start, test B beginning at that position.\n|      With optional end, stop comparing B at that position.\n|      prefix can also be a tuple of bytes to try.\n|\n|  strip(self, bytes=None, /)\n|      Strip leading and trailing bytes contained in the argument.\n|\n|      If the argument is omitted or None, strip leading and trailing ASCII whitespace.\n|\n|  swapcase(...)\n|      B.swapcase() -> copy of B\n|\n|      Return a copy of B with uppercase ASCII characters converted\n|      to lowercase ASCII and vice versa.\n|\n|  title(...)\n|      B.title() -> copy of B\n|\n|      Return a titlecased version of B, i.e. ASCII words start with uppercase\n|      characters, all remaining cased characters have lowercase.\n|\n|  translate(self, table, /, delete=b'')\n|      Return a copy with each character mapped by the given translation table.\n|\n|        table\n|          Translation table, which must be a bytes object of length 256.\n|\n|      All characters occurring in the optional argument delete are removed.\n|      The remaining characters are mapped through the given translation table.\n|\n|  upper(...)\n|      B.upper() -> copy of B\n|\n|      Return a copy of B with all ASCII characters converted to uppercase.\n|\n|  zfill(self, width, /)\n|      Pad a numeric string with zeros on the left, to fill a field of the given width.\n|\n|      The original string is never truncated.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.bytes:\n|\n|  fromhex(string, /) from builtins.type\n|      Create a bytes object from a string of hexadecimal numbers.\n|\n|      Spaces between two numbers are accepted.\n|      Example: bytes.fromhex('B9 01EF') -> b'\\\\xb9\\\\x01\\\\xef'.\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from builtins.bytes:\n|\n|  maketrans(frm, to, /)\n|      Return a translation table useable for the bytes or bytearray translate method.\n|\n|      The returned table will be one where each byte in frm is mapped to the byte at\n|      the same position in to.\n|\n|      The bytes objects frm and to must be of the same length.\n\n#### class Connection\n\n|  dbusbindings.Connection(address, mainloop=None)\n|\n|  A D-Bus connection.\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  addmessagefilter(...)\n|      addmessagefilter(callable)\n|\n|      Add the given message filter to the internal list.\n|\n|      Filters are handlers that are run on all incoming messages, prior to the\n|      objects registered to handle object paths.\n|\n|      Filters are run in the order that they were added. The same handler can\n|      be added as a filter more than once, in which case it will be run more\n|      than once. Filters added during a filter callback won't be run on the\n|      message being processed.\n|\n|  close(...)\n|      close()\n|\n|      Close the connection.\n|\n|  flush(...)\n|      flush()\n|\n|      Block until the outgoing message queue is empty.\n|\n|  getisauthenticated(...)\n|      getisauthenticated() -> bool\n|\n|      Return true if this Connection was ever authenticated.\n|\n|  getisconnected(...)\n|      getisconnected() -> bool\n|\n|      Return true if this Connection is connected.\n|\n|  getpeerunixprocessid(...)\n|      getpeerunixprocessid() -> long or None\n|\n|      Get the UNIX process ID at the other end of the connection, if it has been\n|      authenticated. Return None if this is a non-UNIX platform or the\n|      connection has not been authenticated.\n|\n|  getpeerunixuser(...)\n|      getpeerunixuser() -> long or None\n|\n|      Get the UNIX user ID at the other end of the connection, if it has been\n|      authenticated. Return None if this is a non-UNIX platform or the\n|      connection has not been authenticated.\n|\n|  getuniquename(...)\n|      getuniquename() -> str\n|\n|      Return this application's unique name on this bus.\n|\n|      :Raises DBusException: if the connection has no unique name yet\n|         (for Bus objects this can't happen, for peer-to-peer connections\n|         this means you haven't called `setuniquename`)\n|\n|  getunixfd(...)\n|      getunixfd() -> int or None\n|\n|      Get the connection's UNIX file descriptor, if any.\n|\n|      This can be used for SELinux access control checks with ``getpeercon()``\n|      for example. Do not read or write to the file descriptor, or try to\n|      ``select()`` on it.\n|\n|  listexportedchildobjects(...)\n|      listexportedchildobjects(path: str) -> list of str\n|\n|      Return a list of the names of objects exported on this Connection as\n|      direct children of the given object path.\n|\n|      Each name returned may be converted to a valid object path using\n|      ``dbus.ObjectPath('%s%s%s' % (path, (path != '/' and '/' or ''), name))``.\n|      For the purposes of this function, every parent or ancestor of an exported\n|      object is considered to be an exported object, even if it's only an object\n|      synthesized by the library to support introspection.\n|\n|  removemessagefilter(...)\n|      removemessagefilter(callable)\n|\n|      Remove the given message filter (see `addmessagefilter` for details).\n|\n|      :Raises LookupError:\n|         The given callable is not among the registered filters\n|\n|  sendmessage(...)\n|      sendmessage(msg) -> long\n|\n|      Queue the given message for sending, and return the message serial number.\n|\n|      :Parameters:\n|         `msg` : dbus.lowlevel.Message\n|             The message to be sent.\n|\n|  sendmessagewithreply(...)\n|      sendmessagewithreply(msg, replyhandler, timeouts=-1, requiremainloop=False) -> dbus.lowlevel.PendingCall\n|\n|      Queue the message for sending; expect a reply via the returned PendingCall,\n|      which can also be used to cancel the pending call.\n|\n|      :Parameters:\n|         `msg` : dbus.lowlevel.Message\n|             The message to be sent\n|         `replyhandler` : callable\n|             Asynchronous reply handler: will be called with one positional\n|             parameter, a Message instance representing the reply.\n|         `timeouts` : float\n|             If the reply takes more than this many seconds, a timeout error\n|             will be created locally and raised instead. If this timeout is\n|             negative (default), a sane default (supplied by libdbus) is used.\n|         `requiremainloop` : bool\n|             If True, raise RuntimeError if this Connection does not have a main\n|             loop configured. If False (default) and there is no main loop, you are\n|             responsible for calling block() on the PendingCall.\n|\n|  sendmessagewithreplyandblock(...)\n|      sendmessagewithreplyandblock(msg, timeouts=-1) -> dbus.lowlevel.Message\n|\n|      Send the message and block while waiting for a reply.\n|\n|      This does not re-enter the main loop, so it can lead to a deadlock, if\n|      the called method tries to make a synchronous call to a method in this\n|      application. As such, it's probably a bad idea.\n|\n|      :Parameters:\n|         `msg` : dbus.lowlevel.Message\n|             The message to be sent\n|         `timeouts` : float\n|             If the reply takes more than this many seconds, a timeout error\n|             will be created locally and raised instead. If this timeout is\n|             negative (default), a sane default (supplied by libdbus) is used.\n|      :Returns:\n|         A `dbus.lowlevel.Message` instance (probably a `dbus.lowlevel.MethodReturnMessage`) on success\n|      :Raises dbus.DBusException:\n|         On error (including if the reply arrives but is an\n|         error message)\n|\n|  setallowanonymous(...)\n|      setallowanonymous(bool)\n|\n|      Allows anonymous clients. Call this on the server side of a connection in a onconnectionadded callback\n|\n|  setexitondisconnect(...)\n|      setexitondisconnect(bool)\n|\n|      Set whether the C function ``exit`` will be called when this Connection\n|      becomes disconnected. This will cause the program to exit without calling\n|      any cleanup code or exit handlers.\n|\n|      The default is for this feature to be disabled for Connections and enabled\n|      for Buses.\n|\n|  setuniquename(...)\n|      setuniquename(str)\n|\n|      Set this application's unique name on this bus. Raise ValueError if it has\n|      already been set.\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n\n#### class Dictionary\n\n|  dbus.Dictionary(mappingoriterable=(), signature=None, variantlevel=0)\n|\n|  An mapping whose keys are similar and whose values are similar,\n|  implemented as a subtype of dict.\n|\n|  As currently implemented, a Dictionary behaves just like a dict, but\n|  with the addition of a ``signature`` property set by the constructor;\n|  conversion of its items to D-Bus types is only done when it's sent in\n|  a Message. This may change in future so validation is done earlier.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  ``signature`` is either a string or None. If a string, it must consist\n|  of exactly two complete type signatures, representing the 'key' type\n|  (which must be a primitive type, i.e. one of \"bdginoqstuxy\")\n|  and the 'value' type. The signature of the whole Dictionary will be\n|  ``a{xx}`` where ``xx`` is replaced by the given signature.\n|\n|  If it is None (the default), when the Dictionary is sent over\n|  D-Bus, the key and value signatures will be guessed from an arbitrary\n|  element of the Dictionary.\n|\n|  Method resolution order:\n|      Dictionary\n|      builtins.dict\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors defined here:\n|\n|  signature\n|      The D-Bus signature of each key in this Dictionary, followed by that of each value in this Dictionary, as a Signature instance.\n|\n|  variantlevel\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a dictionary, this is represented in Python by a\n|      Dictionary with variantlevel==2.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.dict:\n|\n|  contains(self, key, /)\n|      True if the dictionary has the specified key, else False.\n|\n|  delitem(self, key, /)\n|      Delete self[key].\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  getitem(...)\n|      x.getitem(y) <==> x[y]\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  ior(self, value, /)\n|      Return self|=value.\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  reversed(self, /)\n|      Return a reverse iterator over the dict keys.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  setitem(self, key, value, /)\n|      Set self[key] to value.\n|\n|  sizeof(...)\n|      D.sizeof() -> size of D in memory, in bytes\n|\n|  clear(...)\n|      D.clear() -> None.  Remove all items from D.\n|\n|  copy(...)\n|      D.copy() -> a shallow copy of D\n|\n|  get(self, key, default=None, /)\n|      Return the value for key if key is in the dictionary, else default.\n|\n|  items(...)\n|      D.items() -> a set-like object providing a view on D's items\n|\n|  keys(...)\n|      D.keys() -> a set-like object providing a view on D's keys\n|\n|  pop(...)\n|      D.pop(k[,d]) -> v, remove specified key and return the corresponding value.\n|\n|      If the key is not found, return the default if given; otherwise,\n|      raise a KeyError.\n|\n|  popitem(self, /)\n|      Remove and return a (key, value) pair as a 2-tuple.\n|\n|      Pairs are returned in LIFO (last-in, first-out) order.\n|      Raises KeyError if the dict is empty.\n|\n|  setdefault(self, key, default=None, /)\n|      Insert key with a value of default if key is not in the dictionary.\n|\n|      Return the value for key if key is in the dictionary, else default.\n|\n|  update(...)\n|      D.update([E, ]F) -> None.  Update D from dict/iterable E and F.\n|      If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]\n|      If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = v\n|      In either case, this is followed by: for k in F:  D[k] = F[k]\n|\n|  values(...)\n|      D.values() -> an object providing a view on D's values\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.dict:\n|\n|  classgetitem(...) from builtins.type\n|      See PEP 585\n|\n|  fromkeys(iterable, value=None, /) from builtins.type\n|      Create a new dictionary with keys from iterable and values set to value.\n|\n|  ----------------------------------------------------------------------\n|  Data and other attributes inherited from builtins.dict:\n|\n|  hash = None\n\n#### class Double\n\n|  Double(x=0, /)\n|\n|  A double-precision floating point number (a subtype of float).\n|\n|  Method resolution order:\n|      Double\n|      dbusbindings.FloatBase\n|      builtins.float\n|      builtins.object\n|\n|  Methods inherited from dbusbindings.FloatBase:\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from dbusbindings.FloatBase:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from dbusbindings.FloatBase:\n|\n|  variantlevel\n|      The number of nested variants wrapping the real data. 0 if not in a variant.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.float:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(self, /)\n|      Return the ceiling as an Integral.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(self, /)\n|      Return the floor as an Integral.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Formats the float according to formatspec.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  int(self, /)\n|      int(self)\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  round(self, ndigits=None, /)\n|      Return the Integral closest to x, rounding half toward even.\n|\n|      When an argument is passed, work like built-in round(x, ndigits).\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(self, /)\n|      Return the Integral closest to x between 0 and x.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original float\n|      and with a positive denominator.\n|\n|      Raise OverflowError on infinities and a ValueError on NaNs.\n|\n|      >>> (10.0).asintegerratio()\n|      (10, 1)\n|      >>> (0.0).asintegerratio()\n|      (0, 1)\n|      >>> (-.25).asintegerratio()\n|      (-1, 4)\n|\n|  conjugate(self, /)\n|      Return self, the complex conjugate of any float.\n|\n|  hex(self, /)\n|      Return a hexadecimal representation of a floating-point number.\n|\n|      >>> (-0.1).hex()\n|      '-0x1.999999999999ap-4'\n|      >>> 3.14159.hex()\n|      '0x1.921f9f01b866ep+1'\n|\n|  isinteger(self, /)\n|      Return True if the float is an integer.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.float:\n|\n|  getformat(typestr, /) from builtins.type\n|      You probably don't want to use this function.\n|\n|        typestr\n|          Must be 'double' or 'float'.\n|\n|      It exists mainly to be used in Python's test suite.\n|\n|      This function returns whichever of 'unknown', 'IEEE, big-endian' or 'IEEE,\n|      little-endian' best describes the format of floating point numbers used by the\n|      C type named by typestr.\n|\n|  setformat(typestr, fmt, /) from builtins.type\n|      You probably don't want to use this function.\n|\n|        typestr\n|          Must be 'double' or 'float'.\n|        fmt\n|          Must be one of 'unknown', 'IEEE, big-endian' or 'IEEE, little-endian',\n|          and in addition can only be one of the latter two if it appears to\n|          match the underlying C reality.\n|\n|      It exists mainly to be used in Python's test suite.\n|\n|      Override the automatic determination of C-level floating point type.\n|      This affects how floats are converted to and from binary strings.\n|\n|  fromhex(string, /) from builtins.type\n|      Create a floating-point number from a hexadecimal string.\n|\n|      >>> float.fromhex('0x1.ffffp10')\n|      2047.984375\n|      >>> float.fromhex('-0x1p-1074')\n|      -5e-324\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.float:\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  real\n|      the real part of a complex number\n\n#### class ErrorMessage\n\n|  dbus.lowlevel.ErrorMessage(replyto: Message, errorname: str, errormessage: str or None)\n|\n|  An error message.\n|\n|  Method resolution order:\n|      ErrorMessage\n|      Message\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from Message:\n|\n|  append(...)\n|      message.append(*args, kwargs)\n|\n|      Set the message's arguments from the positional parameter, according to\n|      the signature given by the ``signature`` keyword parameter.\n|\n|      The following type conversions are supported:\n|\n|      =============================== ===========================\n|      D-Bus (in signature)            Python\n|      =============================== ===========================\n|      boolean (b)                     any object (via bool())\n|      byte (y)                        string of length 1\n|                                      any integer\n|      any integer type                any integer\n|      double (d)                      any float\n|      object path                     anything with a dbusobjectpath attribute\n|      string, signature, object path  str (must be UTF-8) or unicode\n|      dict (a{...})                   any mapping\n|      array (a...)                    any iterable over appropriate objects\n|      struct ((...))                  any iterable over appropriate objects\n|      variant                         any object above (guess type as below)\n|      =============================== ===========================\n|\n|      Here 'any integer' means anything on which int() or long()\n|      (as appropriate) will work, except for basestring subclasses.\n|      'Any float' means anything on which float() will work, except\n|      for basestring subclasses.\n|\n|      If there is no signature, guess from the arguments using\n|      the static method `Message.guesssignature`.\n|\n|  copy(...)\n|      message.copy() -> Message (or subclass)\n|      Deep-copy the message, resetting the serial number to zero.\n|\n|  getargslist(...)\n|      getargslist(kwargs) -> list\n|\n|      Return the message's arguments. Keyword arguments control the translation\n|      of D-Bus types to Python:\n|\n|      :Keywords:\n|         `bytearrays` : bool\n|             If true, convert arrays of byte (signature 'ay') into dbus.ByteArray,\n|             a str subclass. In practice, this is usually what you want, but\n|             it's off by default for consistency.\n|\n|             If false (default), convert them into a dbus.Array of Bytes.\n|\n|      Most of the type mappings should be fairly obvious:\n|\n|      ===============  ===================================================\n|      D-Bus            Python\n|      ===============  ===================================================\n|      byte (y)         dbus.Byte (int subclass)\n|      bool (b)         dbus.Boolean (int subclass)\n|      Signature (g)    dbus.Signature (str subclass)\n|      intNN, uintNN    dbus.IntNN, dbus.UIntNN (int or long subclasses)\n|      double (d)       dbus.Double\n|      string (s)       dbus.String (unicode subclass)\n|                       (or dbus.UTF8String, bytes subclass, if utf8strings set)\n|      Object path (o)  dbus.ObjectPath (str subclass)\n|      dict (a{...})    dbus.Dictionary\n|      array (a...)     dbus.Array (list subclass) containing appropriate types\n|      byte array (ay)  dbus.ByteArray (str subclass) if bytearrays set; or\n|                       list of Byte\n|      struct ((...))   dbus.Struct (tuple subclass) of appropriate types\n|      variant (v)      contained type, but with variantlevel > 0\n|      ===============  ===================================================\n|\n|  getautostart(...)\n|      message.getautostart() -> bool\n|      Return true if this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  getdestination(...)\n|      getdestination() -> str or None\n|\n|      Return the message's destination bus name, or None if none.\n|\n|  geterrorname(...)\n|      geterrorname() -> str or None\n|\n|  getinterface(...)\n|      getinterface() -> str or None\n|\n|  getmember(...)\n|      getmember() -> str or None\n|\n|  getnoreply(...)\n|      message.getnoreply() -> bool\n|      Return true if this message need not be replied to.\n|\n|  getpath(...)\n|      getpath() -> ObjectPath or None\n|\n|      Return the message's destination object path (if it's a method call) or\n|      source object path (if it's a method reply or a signal) or None (if it\n|      has no path).\n|\n|  getpathdecomposed(...)\n|      getpathdecomposed() -> list of str, or None\n|\n|      Return a list of path components (e.g. /foo/bar -> ['foo','bar'], / -> [])\n|      or None if the message has no associated path.\n|\n|  getreplyserial(...)\n|      message.getreplyserial() -> long\n|      Returns the serial that the message is a reply to or 0 if none.\n|\n|  getsender(...)\n|      getsender() -> str or None\n|\n|      Return the message's sender unique name, or None if none.\n|\n|  getserial(...)\n|      message.getserial() -> long\n|      Returns the serial of a message or 0 if none has been specified.\n|\n|      The message's serial number is provided by the application sending the\n|      message and is used to identify replies to this message. All messages\n|      received on a connection will have a serial, but messages you haven't\n|      sent yet may return 0.\n|\n|  getsignature(...)\n|      getsignature() -> Signature or None\n|\n|  gettype(...)\n|      message.gettype() -> int\n|\n|      Returns the type of the message.\n|\n|  hasdestination(...)\n|      hasdestination(busname: str) -> bool\n|\n|  hasinterface(...)\n|      hasinterface(interface: str or None) -> bool\n|\n|  hasmember(...)\n|      hasmember(name: str or None) -> bool\n|\n|  haspath(...)\n|      haspath(name: str or None) -> bool\n|\n|  hassender(...)\n|      hassender(uniquename: str) -> bool\n|\n|  hassignature(...)\n|      hassignature(signature: str) -> bool\n|\n|  iserror(...)\n|      iserror(error: str) -> bool\n|\n|  ismethodcall(...)\n|      ismethodcall(interface: str, member: str) -> bool\n|\n|  issignal(...)\n|      issignal(interface: str, member: str) -> bool\n|\n|  setautostart(...)\n|      message.setautostart(bool) -> None\n|      Set whether this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  setdestination(...)\n|      setdestination(busname: str or None)\n|\n|  seterrorname(...)\n|      seterrorname(name: str or None)\n|\n|  setinterface(...)\n|      setinterface(name: str or None)\n|\n|  setmember(...)\n|      setmember(uniquename: str or None)\n|\n|  setnoreply(...)\n|      message.setnoreply(bool) -> None\n|      Set whether no reply to this message is required.\n|\n|  setpath(...)\n|      setpath(name: str or None)\n|\n|  setreplyserial(...)\n|      message.setreplyserial(bool) -> None\n|      Set the serial that this message is a reply to.\n|\n|  setsender(...)\n|      setsender(uniquename: str or None)\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from Message:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  guesssignature(...)\n|      guesssignature(*args) -> Signature [static method]\n|\n|      Guess a D-Bus signature which should be used to encode the given\n|      Python objects.\n|\n|      The signature is constructed as follows:\n|\n|      +-------------------------------+---------------------------+\n|      |Python                         |D-Bus                      |\n|      +===============================+===========================+\n|      |D-Bus type, variantlevel > 0  |variant (v)                |\n|      +-------------------------------+---------------------------+\n|      |D-Bus type, variantlevel == 0 |the corresponding type     |\n|      +-------------------------------+---------------------------+\n|      |anything with a                |object path                |\n|      |dbusobjectpath attribute |                           |\n|      +-------------------------------+---------------------------+\n|      |bool                           |boolean (y)                |\n|      +-------------------------------+---------------------------+\n|      |any other int subclass         |int32 (i)                  |\n|      +-------------------------------+---------------------------+\n|      |any other long subclass        |int64 (x)                  |\n|      +-------------------------------+---------------------------+\n|      |any other float subclass       |double (d)                 |\n|      +-------------------------------+---------------------------+\n|      |any other str subclass         |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other unicode subclass     |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other tuple subclass       |struct ((...))             |\n|      +-------------------------------+---------------------------+\n|      |any other list subclass        |array (a...), guess        |\n|      |                               |contents' type according to|\n|      |                               |type of first item         |\n|      +-------------------------------+---------------------------+\n|      |any other dict subclass        |dict (a{...}), guess key,  |\n|      |                               |value type according to    |\n|      |                               |types for an arbitrary item|\n|      +-------------------------------+---------------------------+\n|      |anything else                  |raise TypeError            |\n|      +-------------------------------+---------------------------+\n\n#### class Int16\n\n|  dbus.Int16(value: int[, variantlevel: int])\n|\n|  A signed 16-bit integer between -0x8000 and +0x7FFF, represented as\n|  a subtype of `int`.\n|\n|  value must be within the allowed range, or OverflowError will be\n|  raised.\n|\n|      variantlevel must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an int16, this is represented in Python by an\n|      Int16 with variantlevel==2.\n|\n|  Method resolution order:\n|      Int16\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class Int32\n\n|  dbus.Int32(value: int[, variantlevel: int])\n|\n|  A signed 32-bit integer between -0x8000 0000 and +0x7FFF FFFF, represented as\n|  a subtype of ``int``.\n|\n|  ``value`` must be within the allowed range, or `OverflowError` will be\n|  raised.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an int32, this is represented in Python by an\n|      Int32 with variantlevel==2.\n|\n|  Method resolution order:\n|      Int32\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class Int64\n\n|  dbus.Int64(value: int[, variantlevel: int])\n|\n|  A signed 64-bit integer between -0x8000 0000 0000 0000 and\n|  +0x7FFF FFFF FFFF FFFF, represented as a\n|  subtype of ``long`` in Python 2 or ``int`` in Python 3.\n|\n|  Note that this may be changed in future to be a subtype of `int` on\n|  64-bit platforms; applications should not rely on either behaviour.\n|\n|  ``value`` must be within the allowed range, or `OverflowError` will be\n|  raised.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an int64, this is represented in Python by an\n|      Int64 with variantlevel==2.\n|\n|  Method resolution order:\n|      Int64\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class Message\n\n|  A message to be sent or received over a D-Bus Connection.\n|\n|  Methods defined here:\n|\n|  append(...)\n|      message.append(*args, kwargs)\n|\n|      Set the message's arguments from the positional parameter, according to\n|      the signature given by the ``signature`` keyword parameter.\n|\n|      The following type conversions are supported:\n|\n|      =============================== ===========================\n|      D-Bus (in signature)            Python\n|      =============================== ===========================\n|      boolean (b)                     any object (via bool())\n|      byte (y)                        string of length 1\n|                                      any integer\n|      any integer type                any integer\n|      double (d)                      any float\n|      object path                     anything with a dbusobjectpath attribute\n|      string, signature, object path  str (must be UTF-8) or unicode\n|      dict (a{...})                   any mapping\n|      array (a...)                    any iterable over appropriate objects\n|      struct ((...))                  any iterable over appropriate objects\n|      variant                         any object above (guess type as below)\n|      =============================== ===========================\n|\n|      Here 'any integer' means anything on which int() or long()\n|      (as appropriate) will work, except for basestring subclasses.\n|      'Any float' means anything on which float() will work, except\n|      for basestring subclasses.\n|\n|      If there is no signature, guess from the arguments using\n|      the static method `Message.guesssignature`.\n|\n|  copy(...)\n|      message.copy() -> Message (or subclass)\n|      Deep-copy the message, resetting the serial number to zero.\n|\n|  getargslist(...)\n|      getargslist(kwargs) -> list\n|\n|      Return the message's arguments. Keyword arguments control the translation\n|      of D-Bus types to Python:\n|\n|      :Keywords:\n|         `bytearrays` : bool\n|             If true, convert arrays of byte (signature 'ay') into dbus.ByteArray,\n|             a str subclass. In practice, this is usually what you want, but\n|             it's off by default for consistency.\n|\n|             If false (default), convert them into a dbus.Array of Bytes.\n|\n|      Most of the type mappings should be fairly obvious:\n|\n|      ===============  ===================================================\n|      D-Bus            Python\n|      ===============  ===================================================\n|      byte (y)         dbus.Byte (int subclass)\n|      bool (b)         dbus.Boolean (int subclass)\n|      Signature (g)    dbus.Signature (str subclass)\n|      intNN, uintNN    dbus.IntNN, dbus.UIntNN (int or long subclasses)\n|      double (d)       dbus.Double\n|      string (s)       dbus.String (unicode subclass)\n|                       (or dbus.UTF8String, bytes subclass, if utf8strings set)\n|      Object path (o)  dbus.ObjectPath (str subclass)\n|      dict (a{...})    dbus.Dictionary\n|      array (a...)     dbus.Array (list subclass) containing appropriate types\n|      byte array (ay)  dbus.ByteArray (str subclass) if bytearrays set; or\n|                       list of Byte\n|      struct ((...))   dbus.Struct (tuple subclass) of appropriate types\n|      variant (v)      contained type, but with variantlevel > 0\n|      ===============  ===================================================\n|\n|  getautostart(...)\n|      message.getautostart() -> bool\n|      Return true if this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  getdestination(...)\n|      getdestination() -> str or None\n|\n|      Return the message's destination bus name, or None if none.\n|\n|  geterrorname(...)\n|      geterrorname() -> str or None\n|\n|  getinterface(...)\n|      getinterface() -> str or None\n|\n|  getmember(...)\n|      getmember() -> str or None\n|\n|  getnoreply(...)\n|      message.getnoreply() -> bool\n|      Return true if this message need not be replied to.\n|\n|  getpath(...)\n|      getpath() -> ObjectPath or None\n|\n|      Return the message's destination object path (if it's a method call) or\n|      source object path (if it's a method reply or a signal) or None (if it\n|      has no path).\n|\n|  getpathdecomposed(...)\n|      getpathdecomposed() -> list of str, or None\n|\n|      Return a list of path components (e.g. /foo/bar -> ['foo','bar'], / -> [])\n|      or None if the message has no associated path.\n|\n|  getreplyserial(...)\n|      message.getreplyserial() -> long\n|      Returns the serial that the message is a reply to or 0 if none.\n|\n|  getsender(...)\n|      getsender() -> str or None\n|\n|      Return the message's sender unique name, or None if none.\n|\n|  getserial(...)\n|      message.getserial() -> long\n|      Returns the serial of a message or 0 if none has been specified.\n|\n|      The message's serial number is provided by the application sending the\n|      message and is used to identify replies to this message. All messages\n|      received on a connection will have a serial, but messages you haven't\n|      sent yet may return 0.\n|\n|  getsignature(...)\n|      getsignature() -> Signature or None\n|\n|  gettype(...)\n|      message.gettype() -> int\n|\n|      Returns the type of the message.\n|\n|  hasdestination(...)\n|      hasdestination(busname: str) -> bool\n|\n|  hasinterface(...)\n|      hasinterface(interface: str or None) -> bool\n|\n|  hasmember(...)\n|      hasmember(name: str or None) -> bool\n|\n|  haspath(...)\n|      haspath(name: str or None) -> bool\n|\n|  hassender(...)\n|      hassender(uniquename: str) -> bool\n|\n|  hassignature(...)\n|      hassignature(signature: str) -> bool\n|\n|  iserror(...)\n|      iserror(error: str) -> bool\n|\n|  ismethodcall(...)\n|      ismethodcall(interface: str, member: str) -> bool\n|\n|  issignal(...)\n|      issignal(interface: str, member: str) -> bool\n|\n|  setautostart(...)\n|      message.setautostart(bool) -> None\n|      Set whether this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  setdestination(...)\n|      setdestination(busname: str or None)\n|\n|  seterrorname(...)\n|      seterrorname(name: str or None)\n|\n|  setinterface(...)\n|      setinterface(name: str or None)\n|\n|  setmember(...)\n|      setmember(uniquename: str or None)\n|\n|  setnoreply(...)\n|      message.setnoreply(bool) -> None\n|      Set whether no reply to this message is required.\n|\n|  setpath(...)\n|      setpath(name: str or None)\n|\n|  setreplyserial(...)\n|      message.setreplyserial(bool) -> None\n|      Set the serial that this message is a reply to.\n|\n|  setsender(...)\n|      setsender(uniquename: str or None)\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  guesssignature(...)\n|      guesssignature(*args) -> Signature [static method]\n|\n|      Guess a D-Bus signature which should be used to encode the given\n|      Python objects.\n|\n|      The signature is constructed as follows:\n|\n|      +-------------------------------+---------------------------+\n|      |Python                         |D-Bus                      |\n|      +===============================+===========================+\n|      |D-Bus type, variantlevel > 0  |variant (v)                |\n|      +-------------------------------+---------------------------+\n|      |D-Bus type, variantlevel == 0 |the corresponding type     |\n|      +-------------------------------+---------------------------+\n|      |anything with a                |object path                |\n|      |dbusobjectpath attribute |                           |\n|      +-------------------------------+---------------------------+\n|      |bool                           |boolean (y)                |\n|      +-------------------------------+---------------------------+\n|      |any other int subclass         |int32 (i)                  |\n|      +-------------------------------+---------------------------+\n|      |any other long subclass        |int64 (x)                  |\n|      +-------------------------------+---------------------------+\n|      |any other float subclass       |double (d)                 |\n|      +-------------------------------+---------------------------+\n|      |any other str subclass         |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other unicode subclass     |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other tuple subclass       |struct ((...))             |\n|      +-------------------------------+---------------------------+\n|      |any other list subclass        |array (a...), guess        |\n|      |                               |contents' type according to|\n|      |                               |type of first item         |\n|      +-------------------------------+---------------------------+\n|      |any other dict subclass        |dict (a{...}), guess key,  |\n|      |                               |value type according to    |\n|      |                               |types for an arbitrary item|\n|      +-------------------------------+---------------------------+\n|      |anything else                  |raise TypeError            |\n|      +-------------------------------+---------------------------+\n\n#### class MethodCallMessage\n\n|  dbus.lowlevel.MethodCallMessage(destination: str or None, path: str, interface: str or None, method: str)\n|\n|  A method-call message.\n|\n|  ``destination`` is the destination bus name, or None to send the\n|  message directly to the peer (usually the bus daemon).\n|\n|  ``path`` is the object-path of the object whose method is to be called.\n|\n|  ``interface`` is the interface qualifying the method name, or None to omit\n|  the interface from the message header.\n|\n|  ``method`` is the method name (member name).\n|\n|  Method resolution order:\n|      MethodCallMessage\n|      Message\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from Message:\n|\n|  append(...)\n|      message.append(*args, kwargs)\n|\n|      Set the message's arguments from the positional parameter, according to\n|      the signature given by the ``signature`` keyword parameter.\n|\n|      The following type conversions are supported:\n|\n|      =============================== ===========================\n|      D-Bus (in signature)            Python\n|      =============================== ===========================\n|      boolean (b)                     any object (via bool())\n|      byte (y)                        string of length 1\n|                                      any integer\n|      any integer type                any integer\n|      double (d)                      any float\n|      object path                     anything with a dbusobjectpath attribute\n|      string, signature, object path  str (must be UTF-8) or unicode\n|      dict (a{...})                   any mapping\n|      array (a...)                    any iterable over appropriate objects\n|      struct ((...))                  any iterable over appropriate objects\n|      variant                         any object above (guess type as below)\n|      =============================== ===========================\n|\n|      Here 'any integer' means anything on which int() or long()\n|      (as appropriate) will work, except for basestring subclasses.\n|      'Any float' means anything on which float() will work, except\n|      for basestring subclasses.\n|\n|      If there is no signature, guess from the arguments using\n|      the static method `Message.guesssignature`.\n|\n|  copy(...)\n|      message.copy() -> Message (or subclass)\n|      Deep-copy the message, resetting the serial number to zero.\n|\n|  getargslist(...)\n|      getargslist(kwargs) -> list\n|\n|      Return the message's arguments. Keyword arguments control the translation\n|      of D-Bus types to Python:\n|\n|      :Keywords:\n|         `bytearrays` : bool\n|             If true, convert arrays of byte (signature 'ay') into dbus.ByteArray,\n|             a str subclass. In practice, this is usually what you want, but\n|             it's off by default for consistency.\n|\n|             If false (default), convert them into a dbus.Array of Bytes.\n|\n|      Most of the type mappings should be fairly obvious:\n|\n|      ===============  ===================================================\n|      D-Bus            Python\n|      ===============  ===================================================\n|      byte (y)         dbus.Byte (int subclass)\n|      bool (b)         dbus.Boolean (int subclass)\n|      Signature (g)    dbus.Signature (str subclass)\n|      intNN, uintNN    dbus.IntNN, dbus.UIntNN (int or long subclasses)\n|      double (d)       dbus.Double\n|      string (s)       dbus.String (unicode subclass)\n|                       (or dbus.UTF8String, bytes subclass, if utf8strings set)\n|      Object path (o)  dbus.ObjectPath (str subclass)\n|      dict (a{...})    dbus.Dictionary\n|      array (a...)     dbus.Array (list subclass) containing appropriate types\n|      byte array (ay)  dbus.ByteArray (str subclass) if bytearrays set; or\n|                       list of Byte\n|      struct ((...))   dbus.Struct (tuple subclass) of appropriate types\n|      variant (v)      contained type, but with variantlevel > 0\n|      ===============  ===================================================\n|\n|  getautostart(...)\n|      message.getautostart() -> bool\n|      Return true if this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  getdestination(...)\n|      getdestination() -> str or None\n|\n|      Return the message's destination bus name, or None if none.\n|\n|  geterrorname(...)\n|      geterrorname() -> str or None\n|\n|  getinterface(...)\n|      getinterface() -> str or None\n|\n|  getmember(...)\n|      getmember() -> str or None\n|\n|  getnoreply(...)\n|      message.getnoreply() -> bool\n|      Return true if this message need not be replied to.\n|\n|  getpath(...)\n|      getpath() -> ObjectPath or None\n|\n|      Return the message's destination object path (if it's a method call) or\n|      source object path (if it's a method reply or a signal) or None (if it\n|      has no path).\n|\n|  getpathdecomposed(...)\n|      getpathdecomposed() -> list of str, or None\n|\n|      Return a list of path components (e.g. /foo/bar -> ['foo','bar'], / -> [])\n|      or None if the message has no associated path.\n|\n|  getreplyserial(...)\n|      message.getreplyserial() -> long\n|      Returns the serial that the message is a reply to or 0 if none.\n|\n|  getsender(...)\n|      getsender() -> str or None\n|\n|      Return the message's sender unique name, or None if none.\n|\n|  getserial(...)\n|      message.getserial() -> long\n|      Returns the serial of a message or 0 if none has been specified.\n|\n|      The message's serial number is provided by the application sending the\n|      message and is used to identify replies to this message. All messages\n|      received on a connection will have a serial, but messages you haven't\n|      sent yet may return 0.\n|\n|  getsignature(...)\n|      getsignature() -> Signature or None\n|\n|  gettype(...)\n|      message.gettype() -> int\n|\n|      Returns the type of the message.\n|\n|  hasdestination(...)\n|      hasdestination(busname: str) -> bool\n|\n|  hasinterface(...)\n|      hasinterface(interface: str or None) -> bool\n|\n|  hasmember(...)\n|      hasmember(name: str or None) -> bool\n|\n|  haspath(...)\n|      haspath(name: str or None) -> bool\n|\n|  hassender(...)\n|      hassender(uniquename: str) -> bool\n|\n|  hassignature(...)\n|      hassignature(signature: str) -> bool\n|\n|  iserror(...)\n|      iserror(error: str) -> bool\n|\n|  ismethodcall(...)\n|      ismethodcall(interface: str, member: str) -> bool\n|\n|  issignal(...)\n|      issignal(interface: str, member: str) -> bool\n|\n|  setautostart(...)\n|      message.setautostart(bool) -> None\n|      Set whether this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  setdestination(...)\n|      setdestination(busname: str or None)\n|\n|  seterrorname(...)\n|      seterrorname(name: str or None)\n|\n|  setinterface(...)\n|      setinterface(name: str or None)\n|\n|  setmember(...)\n|      setmember(uniquename: str or None)\n|\n|  setnoreply(...)\n|      message.setnoreply(bool) -> None\n|      Set whether no reply to this message is required.\n|\n|  setpath(...)\n|      setpath(name: str or None)\n|\n|  setreplyserial(...)\n|      message.setreplyserial(bool) -> None\n|      Set the serial that this message is a reply to.\n|\n|  setsender(...)\n|      setsender(uniquename: str or None)\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from Message:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  guesssignature(...)\n|      guesssignature(*args) -> Signature [static method]\n|\n|      Guess a D-Bus signature which should be used to encode the given\n|      Python objects.\n|\n|      The signature is constructed as follows:\n|\n|      +-------------------------------+---------------------------+\n|      |Python                         |D-Bus                      |\n|      +===============================+===========================+\n|      |D-Bus type, variantlevel > 0  |variant (v)                |\n|      +-------------------------------+---------------------------+\n|      |D-Bus type, variantlevel == 0 |the corresponding type     |\n|      +-------------------------------+---------------------------+\n|      |anything with a                |object path                |\n|      |dbusobjectpath attribute |                           |\n|      +-------------------------------+---------------------------+\n|      |bool                           |boolean (y)                |\n|      +-------------------------------+---------------------------+\n|      |any other int subclass         |int32 (i)                  |\n|      +-------------------------------+---------------------------+\n|      |any other long subclass        |int64 (x)                  |\n|      +-------------------------------+---------------------------+\n|      |any other float subclass       |double (d)                 |\n|      +-------------------------------+---------------------------+\n|      |any other str subclass         |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other unicode subclass     |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other tuple subclass       |struct ((...))             |\n|      +-------------------------------+---------------------------+\n|      |any other list subclass        |array (a...), guess        |\n|      |                               |contents' type according to|\n|      |                               |type of first item         |\n|      +-------------------------------+---------------------------+\n|      |any other dict subclass        |dict (a{...}), guess key,  |\n|      |                               |value type according to    |\n|      |                               |types for an arbitrary item|\n|      +-------------------------------+---------------------------+\n|      |anything else                  |raise TypeError            |\n|      +-------------------------------+---------------------------+\n\n#### class MethodReturnMessage\n\n|  dbus.lowlevel.MethodReturnMessage(methodcall: MethodCallMessage)\n|\n|  A method-return message.\n|\n|  Method resolution order:\n|      MethodReturnMessage\n|      Message\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from Message:\n|\n|  append(...)\n|      message.append(*args, kwargs)\n|\n|      Set the message's arguments from the positional parameter, according to\n|      the signature given by the ``signature`` keyword parameter.\n|\n|      The following type conversions are supported:\n|\n|      =============================== ===========================\n|      D-Bus (in signature)            Python\n|      =============================== ===========================\n|      boolean (b)                     any object (via bool())\n|      byte (y)                        string of length 1\n|                                      any integer\n|      any integer type                any integer\n|      double (d)                      any float\n|      object path                     anything with a dbusobjectpath attribute\n|      string, signature, object path  str (must be UTF-8) or unicode\n|      dict (a{...})                   any mapping\n|      array (a...)                    any iterable over appropriate objects\n|      struct ((...))                  any iterable over appropriate objects\n|      variant                         any object above (guess type as below)\n|      =============================== ===========================\n|\n|      Here 'any integer' means anything on which int() or long()\n|      (as appropriate) will work, except for basestring subclasses.\n|      'Any float' means anything on which float() will work, except\n|      for basestring subclasses.\n|\n|      If there is no signature, guess from the arguments using\n|      the static method `Message.guesssignature`.\n|\n|  copy(...)\n|      message.copy() -> Message (or subclass)\n|      Deep-copy the message, resetting the serial number to zero.\n|\n|  getargslist(...)\n|      getargslist(kwargs) -> list\n|\n|      Return the message's arguments. Keyword arguments control the translation\n|      of D-Bus types to Python:\n|\n|      :Keywords:\n|         `bytearrays` : bool\n|             If true, convert arrays of byte (signature 'ay') into dbus.ByteArray,\n|             a str subclass. In practice, this is usually what you want, but\n|             it's off by default for consistency.\n|\n|             If false (default), convert them into a dbus.Array of Bytes.\n|\n|      Most of the type mappings should be fairly obvious:\n|\n|      ===============  ===================================================\n|      D-Bus            Python\n|      ===============  ===================================================\n|      byte (y)         dbus.Byte (int subclass)\n|      bool (b)         dbus.Boolean (int subclass)\n|      Signature (g)    dbus.Signature (str subclass)\n|      intNN, uintNN    dbus.IntNN, dbus.UIntNN (int or long subclasses)\n|      double (d)       dbus.Double\n|      string (s)       dbus.String (unicode subclass)\n|                       (or dbus.UTF8String, bytes subclass, if utf8strings set)\n|      Object path (o)  dbus.ObjectPath (str subclass)\n|      dict (a{...})    dbus.Dictionary\n|      array (a...)     dbus.Array (list subclass) containing appropriate types\n|      byte array (ay)  dbus.ByteArray (str subclass) if bytearrays set; or\n|                       list of Byte\n|      struct ((...))   dbus.Struct (tuple subclass) of appropriate types\n|      variant (v)      contained type, but with variantlevel > 0\n|      ===============  ===================================================\n|\n|  getautostart(...)\n|      message.getautostart() -> bool\n|      Return true if this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  getdestination(...)\n|      getdestination() -> str or None\n|\n|      Return the message's destination bus name, or None if none.\n|\n|  geterrorname(...)\n|      geterrorname() -> str or None\n|\n|  getinterface(...)\n|      getinterface() -> str or None\n|\n|  getmember(...)\n|      getmember() -> str or None\n|\n|  getnoreply(...)\n|      message.getnoreply() -> bool\n|      Return true if this message need not be replied to.\n|\n|  getpath(...)\n|      getpath() -> ObjectPath or None\n|\n|      Return the message's destination object path (if it's a method call) or\n|      source object path (if it's a method reply or a signal) or None (if it\n|      has no path).\n|\n|  getpathdecomposed(...)\n|      getpathdecomposed() -> list of str, or None\n|\n|      Return a list of path components (e.g. /foo/bar -> ['foo','bar'], / -> [])\n|      or None if the message has no associated path.\n|\n|  getreplyserial(...)\n|      message.getreplyserial() -> long\n|      Returns the serial that the message is a reply to or 0 if none.\n|\n|  getsender(...)\n|      getsender() -> str or None\n|\n|      Return the message's sender unique name, or None if none.\n|\n|  getserial(...)\n|      message.getserial() -> long\n|      Returns the serial of a message or 0 if none has been specified.\n|\n|      The message's serial number is provided by the application sending the\n|      message and is used to identify replies to this message. All messages\n|      received on a connection will have a serial, but messages you haven't\n|      sent yet may return 0.\n|\n|  getsignature(...)\n|      getsignature() -> Signature or None\n|\n|  gettype(...)\n|      message.gettype() -> int\n|\n|      Returns the type of the message.\n|\n|  hasdestination(...)\n|      hasdestination(busname: str) -> bool\n|\n|  hasinterface(...)\n|      hasinterface(interface: str or None) -> bool\n|\n|  hasmember(...)\n|      hasmember(name: str or None) -> bool\n|\n|  haspath(...)\n|      haspath(name: str or None) -> bool\n|\n|  hassender(...)\n|      hassender(uniquename: str) -> bool\n|\n|  hassignature(...)\n|      hassignature(signature: str) -> bool\n|\n|  iserror(...)\n|      iserror(error: str) -> bool\n|\n|  ismethodcall(...)\n|      ismethodcall(interface: str, member: str) -> bool\n|\n|  issignal(...)\n|      issignal(interface: str, member: str) -> bool\n|\n|  setautostart(...)\n|      message.setautostart(bool) -> None\n|      Set whether this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  setdestination(...)\n|      setdestination(busname: str or None)\n|\n|  seterrorname(...)\n|      seterrorname(name: str or None)\n|\n|  setinterface(...)\n|      setinterface(name: str or None)\n|\n|  setmember(...)\n|      setmember(uniquename: str or None)\n|\n|  setnoreply(...)\n|      message.setnoreply(bool) -> None\n|      Set whether no reply to this message is required.\n|\n|  setpath(...)\n|      setpath(name: str or None)\n|\n|  setreplyserial(...)\n|      message.setreplyserial(bool) -> None\n|      Set the serial that this message is a reply to.\n|\n|  setsender(...)\n|      setsender(uniquename: str or None)\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from Message:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  guesssignature(...)\n|      guesssignature(*args) -> Signature [static method]\n|\n|      Guess a D-Bus signature which should be used to encode the given\n|      Python objects.\n|\n|      The signature is constructed as follows:\n|\n|      +-------------------------------+---------------------------+\n|      |Python                         |D-Bus                      |\n|      +===============================+===========================+\n|      |D-Bus type, variantlevel > 0  |variant (v)                |\n|      +-------------------------------+---------------------------+\n|      |D-Bus type, variantlevel == 0 |the corresponding type     |\n|      +-------------------------------+---------------------------+\n|      |anything with a                |object path                |\n|      |dbusobjectpath attribute |                           |\n|      +-------------------------------+---------------------------+\n|      |bool                           |boolean (y)                |\n|      +-------------------------------+---------------------------+\n|      |any other int subclass         |int32 (i)                  |\n|      +-------------------------------+---------------------------+\n|      |any other long subclass        |int64 (x)                  |\n|      +-------------------------------+---------------------------+\n|      |any other float subclass       |double (d)                 |\n|      +-------------------------------+---------------------------+\n|      |any other str subclass         |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other unicode subclass     |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other tuple subclass       |struct ((...))             |\n|      +-------------------------------+---------------------------+\n|      |any other list subclass        |array (a...), guess        |\n|      |                               |contents' type according to|\n|      |                               |type of first item         |\n|      +-------------------------------+---------------------------+\n|      |any other dict subclass        |dict (a{...}), guess key,  |\n|      |                               |value type according to    |\n|      |                               |types for an arbitrary item|\n|      +-------------------------------+---------------------------+\n|      |anything else                  |raise TypeError            |\n|      +-------------------------------+---------------------------+\n\n#### class NativeMainLoop\n\n|  Object representing D-Bus main loop integration done in native code.\n|  Cannot be instantiated directly.\n\n#### class ObjectPath\n\n|  dbus.ObjectPath(path: str[, variantlevel: int=0])\n|  A D-Bus object path, such as ``/com/example/MyApp/Documents/abc``.\n|\n|  ObjectPath is a subtype of :py:class:`str`, and object-paths behave like strings.\n|\n|  path must be an ASCII string following the syntax of object paths.\n|  variantlevel must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an object path, this is represented in Python by an\n|      ObjectPath with variantlevel==2.\n|\n|  Method resolution order:\n|      ObjectPath\n|      dbusbindings.StrBase\n|      builtins.str\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.StrBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.str:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  format(self, formatspec, /)\n|      Return a formatted version of the string as described by formatspec.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getitem(self, key, /)\n|      Return self[key].\n|\n|  getnewargs(...)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  sizeof(self, /)\n|      Return the size of the string in memory, in bytes.\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  capitalize(self, /)\n|      Return a capitalized version of the string.\n|\n|      More specifically, make the first character have upper case and the rest lower\n|      case.\n|\n|  casefold(self, /)\n|      Return a version of the string suitable for caseless comparisons.\n|\n|  center(self, width, fillchar=' ', /)\n|      Return a centered string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  count(...)\n|      S.count(sub[, start[, end]]) -> int\n|\n|      Return the number of non-overlapping occurrences of substring sub in\n|      string S[start:end].  Optional arguments start and end are\n|      interpreted as in slice notation.\n|\n|  encode(self, /, encoding='utf-8', errors='strict')\n|      Encode the string using the codec registered for encoding.\n|\n|      encoding\n|        The encoding in which to encode the string.\n|      errors\n|        The error handling scheme to use for encoding errors.\n|        The default is 'strict' meaning that encoding errors raise a\n|        UnicodeEncodeError.  Other possible values are 'ignore', 'replace' and\n|        'xmlcharrefreplace' as well as any other name registered with\n|        codecs.registererror that can handle UnicodeEncodeErrors.\n|\n|  endswith(...)\n|      S.endswith(suffix[, start[, end]]) -> bool\n|\n|      Return True if S ends with the specified suffix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      suffix can also be a tuple of strings to try.\n|\n|  expandtabs(self, /, tabsize=8)\n|      Return a copy where all tab characters are expanded using spaces.\n|\n|      If tabsize is not given, a tab size of 8 characters is assumed.\n|\n|  find(...)\n|      S.find(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  format(...)\n|      S.format(*args, kwargs) -> str\n|\n|      Return a formatted version of S, using substitutions from args and kwargs.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  formatmap(...)\n|      S.formatmap(mapping) -> str\n|\n|      Return a formatted version of S, using substitutions from mapping.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  index(...)\n|      S.index(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  isalnum(self, /)\n|      Return True if the string is an alpha-numeric string, False otherwise.\n|\n|      A string is alpha-numeric if all characters in the string are alpha-numeric and\n|      there is at least one character in the string.\n|\n|  isalpha(self, /)\n|      Return True if the string is an alphabetic string, False otherwise.\n|\n|      A string is alphabetic if all characters in the string are alphabetic and there\n|      is at least one character in the string.\n|\n|  isascii(self, /)\n|      Return True if all characters in the string are ASCII, False otherwise.\n|\n|      ASCII characters have code points in the range U+0000-U+007F.\n|      Empty string is ASCII too.\n|\n|  isdecimal(self, /)\n|      Return True if the string is a decimal string, False otherwise.\n|\n|      A string is a decimal string if all characters in the string are decimal and\n|      there is at least one character in the string.\n|\n|  isdigit(self, /)\n|      Return True if the string is a digit string, False otherwise.\n|\n|      A string is a digit string if all characters in the string are digits and there\n|      is at least one character in the string.\n|\n|  isidentifier(self, /)\n|      Return True if the string is a valid Python identifier, False otherwise.\n|\n|      Call keyword.iskeyword(s) to test whether string s is a reserved identifier,\n|      such as \"def\" or \"class\".\n|\n|  islower(self, /)\n|      Return True if the string is a lowercase string, False otherwise.\n|\n|      A string is lowercase if all cased characters in the string are lowercase and\n|      there is at least one cased character in the string.\n|\n|  isnumeric(self, /)\n|      Return True if the string is a numeric string, False otherwise.\n|\n|      A string is numeric if all characters in the string are numeric and there is at\n|      least one character in the string.\n|\n|  isprintable(self, /)\n|      Return True if the string is printable, False otherwise.\n|\n|      A string is printable if all of its characters are considered printable in\n|      repr() or if it is empty.\n|\n|  isspace(self, /)\n|      Return True if the string is a whitespace string, False otherwise.\n|\n|      A string is whitespace if all characters in the string are whitespace and there\n|      is at least one character in the string.\n|\n|  istitle(self, /)\n|      Return True if the string is a title-cased string, False otherwise.\n|\n|      In a title-cased string, upper- and title-case characters may only\n|      follow uncased characters and lowercase characters only cased ones.\n|\n|  isupper(self, /)\n|      Return True if the string is an uppercase string, False otherwise.\n|\n|      A string is uppercase if all cased characters in the string are uppercase and\n|      there is at least one cased character in the string.\n|\n|  join(self, iterable, /)\n|      Concatenate any number of strings.\n|\n|      The string whose method is called is inserted in between each given string.\n|      The result is returned as a new string.\n|\n|      Example: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'\n|\n|  ljust(self, width, fillchar=' ', /)\n|      Return a left-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  lower(self, /)\n|      Return a copy of the string converted to lowercase.\n|\n|  lstrip(self, chars=None, /)\n|      Return a copy of the string with leading whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  partition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string.  If the separator is found,\n|      returns a 3-tuple containing the part before the separator, the separator\n|      itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing the original string\n|      and two empty strings.\n|\n|  removeprefix(self, prefix, /)\n|      Return a str with the given prefix string removed if present.\n|\n|      If the string starts with the prefix string, return string[len(prefix):].\n|      Otherwise, return a copy of the original string.\n|\n|  removesuffix(self, suffix, /)\n|      Return a str with the given suffix string removed if present.\n|\n|      If the string ends with the suffix string and that suffix is not empty,\n|      return string[:-len(suffix)]. Otherwise, return a copy of the original\n|      string.\n|\n|  replace(self, old, new, count=-1, /)\n|      Return a copy with all occurrences of substring old replaced by new.\n|\n|        count\n|          Maximum number of occurrences to replace.\n|          -1 (the default value) means replace all occurrences.\n|\n|      If the optional argument count is given, only the first count occurrences are\n|      replaced.\n|\n|  rfind(...)\n|      S.rfind(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  rindex(...)\n|      S.rindex(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  rjust(self, width, fillchar=' ', /)\n|      Return a right-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  rpartition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string, starting at the end. If\n|      the separator is found, returns a 3-tuple containing the part before the\n|      separator, the separator itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing two empty strings\n|      and the original string.\n|\n|  rsplit(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Splitting starts at the end of the string and works to the front.\n|\n|  rstrip(self, chars=None, /)\n|      Return a copy of the string with trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  split(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Note, str.split() is mainly useful for data that has been intentionally\n|      delimited.  With natural text that includes punctuation, consider using\n|      the regular expression module.\n|\n|  splitlines(self, /, keepends=False)\n|      Return a list of the lines in the string, breaking at line boundaries.\n|\n|      Line breaks are not included in the resulting list unless keepends is given and\n|      true.\n|\n|  startswith(...)\n|      S.startswith(prefix[, start[, end]]) -> bool\n|\n|      Return True if S starts with the specified prefix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      prefix can also be a tuple of strings to try.\n|\n|  strip(self, chars=None, /)\n|      Return a copy of the string with leading and trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  swapcase(self, /)\n|      Convert uppercase characters to lowercase and lowercase characters to uppercase.\n|\n|  title(self, /)\n|      Return a version of the string where each word is titlecased.\n|\n|      More specifically, words start with uppercased characters and all remaining\n|      cased characters have lower case.\n|\n|  translate(self, table, /)\n|      Replace each character in the string using the given translation table.\n|\n|        table\n|          Translation table, which must be a mapping of Unicode ordinals to\n|          Unicode ordinals, strings, or None.\n|\n|      The table must implement lookup/indexing via getitem, for instance a\n|      dictionary or list.  If this operation raises LookupError, the character is\n|      left untouched.  Characters mapped to None are deleted.\n|\n|  upper(self, /)\n|      Return a copy of the string converted to uppercase.\n|\n|  zfill(self, width, /)\n|      Pad a numeric string with zeros on the left, to fill a field of the given width.\n|\n|      The string is never truncated.\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from builtins.str:\n|\n|  maketrans(...)\n|      Return a translation table usable for str.translate().\n|\n|      If there is only one argument, it must be a dictionary mapping Unicode\n|      ordinals (integers) or characters to Unicode ordinals, strings or None.\n|      Character keys will be then converted to ordinals.\n|      If there are two arguments, they must be strings of equal length, and\n|      in the resulting dictionary, each character in x will be mapped to the\n|      character at the same position in y. If there is a third argument, it\n|      must be a string, whose characters will be mapped to None in the result.\n\n#### class PendingCall\n\n|  Object representing a pending D-Bus call, returned by\n|  Connection.sendmessagewithreply(). Cannot be instantiated directly.\n|\n|  Methods defined here:\n|\n|  block(...)\n|      block()\n|\n|      Block until this pending call has completed and the associated\n|      reply handler has been called.\n|\n|      This can lead to a deadlock, if the called method tries to make a\n|      synchronous call to a method in this application.\n|\n|  cancel(...)\n|      cancel()\n|\n|      Cancel this pending call. Its reply will be ignored and the associated\n|      reply handler will never be called.\n|\n|  getcompleted(...)\n|      getcompleted() -> bool\n|\n|      Return true if this pending call has completed.\n|\n|      If so, its associated reply handler has been called and it is no\n|      longer meaningful to cancel it.\n\n#### class SignalMessage\n\n|  dbus.lowlevel.SignalMessage(path: str, interface: str, method: str)\n|\n|  A signal message.\n|\n|  Method resolution order:\n|      SignalMessage\n|      Message\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  init(self, /, *args, kwargs)\n|      Initialize self.  See help(type(self)) for accurate signature.\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from Message:\n|\n|  append(...)\n|      message.append(*args, kwargs)\n|\n|      Set the message's arguments from the positional parameter, according to\n|      the signature given by the ``signature`` keyword parameter.\n|\n|      The following type conversions are supported:\n|\n|      =============================== ===========================\n|      D-Bus (in signature)            Python\n|      =============================== ===========================\n|      boolean (b)                     any object (via bool())\n|      byte (y)                        string of length 1\n|                                      any integer\n|      any integer type                any integer\n|      double (d)                      any float\n|      object path                     anything with a dbusobjectpath attribute\n|      string, signature, object path  str (must be UTF-8) or unicode\n|      dict (a{...})                   any mapping\n|      array (a...)                    any iterable over appropriate objects\n|      struct ((...))                  any iterable over appropriate objects\n|      variant                         any object above (guess type as below)\n|      =============================== ===========================\n|\n|      Here 'any integer' means anything on which int() or long()\n|      (as appropriate) will work, except for basestring subclasses.\n|      'Any float' means anything on which float() will work, except\n|      for basestring subclasses.\n|\n|      If there is no signature, guess from the arguments using\n|      the static method `Message.guesssignature`.\n|\n|  copy(...)\n|      message.copy() -> Message (or subclass)\n|      Deep-copy the message, resetting the serial number to zero.\n|\n|  getargslist(...)\n|      getargslist(kwargs) -> list\n|\n|      Return the message's arguments. Keyword arguments control the translation\n|      of D-Bus types to Python:\n|\n|      :Keywords:\n|         `bytearrays` : bool\n|             If true, convert arrays of byte (signature 'ay') into dbus.ByteArray,\n|             a str subclass. In practice, this is usually what you want, but\n|             it's off by default for consistency.\n|\n|             If false (default), convert them into a dbus.Array of Bytes.\n|\n|      Most of the type mappings should be fairly obvious:\n|\n|      ===============  ===================================================\n|      D-Bus            Python\n|      ===============  ===================================================\n|      byte (y)         dbus.Byte (int subclass)\n|      bool (b)         dbus.Boolean (int subclass)\n|      Signature (g)    dbus.Signature (str subclass)\n|      intNN, uintNN    dbus.IntNN, dbus.UIntNN (int or long subclasses)\n|      double (d)       dbus.Double\n|      string (s)       dbus.String (unicode subclass)\n|                       (or dbus.UTF8String, bytes subclass, if utf8strings set)\n|      Object path (o)  dbus.ObjectPath (str subclass)\n|      dict (a{...})    dbus.Dictionary\n|      array (a...)     dbus.Array (list subclass) containing appropriate types\n|      byte array (ay)  dbus.ByteArray (str subclass) if bytearrays set; or\n|                       list of Byte\n|      struct ((...))   dbus.Struct (tuple subclass) of appropriate types\n|      variant (v)      contained type, but with variantlevel > 0\n|      ===============  ===================================================\n|\n|  getautostart(...)\n|      message.getautostart() -> bool\n|      Return true if this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  getdestination(...)\n|      getdestination() -> str or None\n|\n|      Return the message's destination bus name, or None if none.\n|\n|  geterrorname(...)\n|      geterrorname() -> str or None\n|\n|  getinterface(...)\n|      getinterface() -> str or None\n|\n|  getmember(...)\n|      getmember() -> str or None\n|\n|  getnoreply(...)\n|      message.getnoreply() -> bool\n|      Return true if this message need not be replied to.\n|\n|  getpath(...)\n|      getpath() -> ObjectPath or None\n|\n|      Return the message's destination object path (if it's a method call) or\n|      source object path (if it's a method reply or a signal) or None (if it\n|      has no path).\n|\n|  getpathdecomposed(...)\n|      getpathdecomposed() -> list of str, or None\n|\n|      Return a list of path components (e.g. /foo/bar -> ['foo','bar'], / -> [])\n|      or None if the message has no associated path.\n|\n|  getreplyserial(...)\n|      message.getreplyserial() -> long\n|      Returns the serial that the message is a reply to or 0 if none.\n|\n|  getsender(...)\n|      getsender() -> str or None\n|\n|      Return the message's sender unique name, or None if none.\n|\n|  getserial(...)\n|      message.getserial() -> long\n|      Returns the serial of a message or 0 if none has been specified.\n|\n|      The message's serial number is provided by the application sending the\n|      message and is used to identify replies to this message. All messages\n|      received on a connection will have a serial, but messages you haven't\n|      sent yet may return 0.\n|\n|  getsignature(...)\n|      getsignature() -> Signature or None\n|\n|  gettype(...)\n|      message.gettype() -> int\n|\n|      Returns the type of the message.\n|\n|  hasdestination(...)\n|      hasdestination(busname: str) -> bool\n|\n|  hasinterface(...)\n|      hasinterface(interface: str or None) -> bool\n|\n|  hasmember(...)\n|      hasmember(name: str or None) -> bool\n|\n|  haspath(...)\n|      haspath(name: str or None) -> bool\n|\n|  hassender(...)\n|      hassender(uniquename: str) -> bool\n|\n|  hassignature(...)\n|      hassignature(signature: str) -> bool\n|\n|  iserror(...)\n|      iserror(error: str) -> bool\n|\n|  ismethodcall(...)\n|      ismethodcall(interface: str, member: str) -> bool\n|\n|  issignal(...)\n|      issignal(interface: str, member: str) -> bool\n|\n|  setautostart(...)\n|      message.setautostart(bool) -> None\n|      Set whether this message will cause an owner for the destination name\n|      to be auto-started.\n|\n|  setdestination(...)\n|      setdestination(busname: str or None)\n|\n|  seterrorname(...)\n|      seterrorname(name: str or None)\n|\n|  setinterface(...)\n|      setinterface(name: str or None)\n|\n|  setmember(...)\n|      setmember(uniquename: str or None)\n|\n|  setnoreply(...)\n|      message.setnoreply(bool) -> None\n|      Set whether no reply to this message is required.\n|\n|  setpath(...)\n|      setpath(name: str or None)\n|\n|  setreplyserial(...)\n|      message.setreplyserial(bool) -> None\n|      Set the serial that this message is a reply to.\n|\n|  setsender(...)\n|      setsender(uniquename: str or None)\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from Message:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  guesssignature(...)\n|      guesssignature(*args) -> Signature [static method]\n|\n|      Guess a D-Bus signature which should be used to encode the given\n|      Python objects.\n|\n|      The signature is constructed as follows:\n|\n|      +-------------------------------+---------------------------+\n|      |Python                         |D-Bus                      |\n|      +===============================+===========================+\n|      |D-Bus type, variantlevel > 0  |variant (v)                |\n|      +-------------------------------+---------------------------+\n|      |D-Bus type, variantlevel == 0 |the corresponding type     |\n|      +-------------------------------+---------------------------+\n|      |anything with a                |object path                |\n|      |dbusobjectpath attribute |                           |\n|      +-------------------------------+---------------------------+\n|      |bool                           |boolean (y)                |\n|      +-------------------------------+---------------------------+\n|      |any other int subclass         |int32 (i)                  |\n|      +-------------------------------+---------------------------+\n|      |any other long subclass        |int64 (x)                  |\n|      +-------------------------------+---------------------------+\n|      |any other float subclass       |double (d)                 |\n|      +-------------------------------+---------------------------+\n|      |any other str subclass         |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other unicode subclass     |string (s)                 |\n|      +-------------------------------+---------------------------+\n|      |any other tuple subclass       |struct ((...))             |\n|      +-------------------------------+---------------------------+\n|      |any other list subclass        |array (a...), guess        |\n|      |                               |contents' type according to|\n|      |                               |type of first item         |\n|      +-------------------------------+---------------------------+\n|      |any other dict subclass        |dict (a{...}), guess key,  |\n|      |                               |value type according to    |\n|      |                               |types for an arbitrary item|\n|      +-------------------------------+---------------------------+\n|      |anything else                  |raise TypeError            |\n|      +-------------------------------+---------------------------+\n\n#### class Signature\n\n|  Signature(value: str or unicode[, variantlevel: int])\n|\n|  A string subclass whose values are restricted to valid D-Bus\n|  signatures. When iterated over, instead of individual characters it\n|  produces Signature instances representing single complete types.\n|\n|  ``value`` must be a valid D-Bus signature (zero or more single complete\n|  types).\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a signature, this is represented in Python by a\n|      Signature with variantlevel==2.\n|\n|  Method resolution order:\n|      Signature\n|      dbusbindings.StrBase\n|      builtins.str\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.StrBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.str:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  format(self, formatspec, /)\n|      Return a formatted version of the string as described by formatspec.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getitem(self, key, /)\n|      Return self[key].\n|\n|  getnewargs(...)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  sizeof(self, /)\n|      Return the size of the string in memory, in bytes.\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  capitalize(self, /)\n|      Return a capitalized version of the string.\n|\n|      More specifically, make the first character have upper case and the rest lower\n|      case.\n|\n|  casefold(self, /)\n|      Return a version of the string suitable for caseless comparisons.\n|\n|  center(self, width, fillchar=' ', /)\n|      Return a centered string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  count(...)\n|      S.count(sub[, start[, end]]) -> int\n|\n|      Return the number of non-overlapping occurrences of substring sub in\n|      string S[start:end].  Optional arguments start and end are\n|      interpreted as in slice notation.\n|\n|  encode(self, /, encoding='utf-8', errors='strict')\n|      Encode the string using the codec registered for encoding.\n|\n|      encoding\n|        The encoding in which to encode the string.\n|      errors\n|        The error handling scheme to use for encoding errors.\n|        The default is 'strict' meaning that encoding errors raise a\n|        UnicodeEncodeError.  Other possible values are 'ignore', 'replace' and\n|        'xmlcharrefreplace' as well as any other name registered with\n|        codecs.registererror that can handle UnicodeEncodeErrors.\n|\n|  endswith(...)\n|      S.endswith(suffix[, start[, end]]) -> bool\n|\n|      Return True if S ends with the specified suffix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      suffix can also be a tuple of strings to try.\n|\n|  expandtabs(self, /, tabsize=8)\n|      Return a copy where all tab characters are expanded using spaces.\n|\n|      If tabsize is not given, a tab size of 8 characters is assumed.\n|\n|  find(...)\n|      S.find(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  format(...)\n|      S.format(*args, kwargs) -> str\n|\n|      Return a formatted version of S, using substitutions from args and kwargs.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  formatmap(...)\n|      S.formatmap(mapping) -> str\n|\n|      Return a formatted version of S, using substitutions from mapping.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  index(...)\n|      S.index(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  isalnum(self, /)\n|      Return True if the string is an alpha-numeric string, False otherwise.\n|\n|      A string is alpha-numeric if all characters in the string are alpha-numeric and\n|      there is at least one character in the string.\n|\n|  isalpha(self, /)\n|      Return True if the string is an alphabetic string, False otherwise.\n|\n|      A string is alphabetic if all characters in the string are alphabetic and there\n|      is at least one character in the string.\n|\n|  isascii(self, /)\n|      Return True if all characters in the string are ASCII, False otherwise.\n|\n|      ASCII characters have code points in the range U+0000-U+007F.\n|      Empty string is ASCII too.\n|\n|  isdecimal(self, /)\n|      Return True if the string is a decimal string, False otherwise.\n|\n|      A string is a decimal string if all characters in the string are decimal and\n|      there is at least one character in the string.\n|\n|  isdigit(self, /)\n|      Return True if the string is a digit string, False otherwise.\n|\n|      A string is a digit string if all characters in the string are digits and there\n|      is at least one character in the string.\n|\n|  isidentifier(self, /)\n|      Return True if the string is a valid Python identifier, False otherwise.\n|\n|      Call keyword.iskeyword(s) to test whether string s is a reserved identifier,\n|      such as \"def\" or \"class\".\n|\n|  islower(self, /)\n|      Return True if the string is a lowercase string, False otherwise.\n|\n|      A string is lowercase if all cased characters in the string are lowercase and\n|      there is at least one cased character in the string.\n|\n|  isnumeric(self, /)\n|      Return True if the string is a numeric string, False otherwise.\n|\n|      A string is numeric if all characters in the string are numeric and there is at\n|      least one character in the string.\n|\n|  isprintable(self, /)\n|      Return True if the string is printable, False otherwise.\n|\n|      A string is printable if all of its characters are considered printable in\n|      repr() or if it is empty.\n|\n|  isspace(self, /)\n|      Return True if the string is a whitespace string, False otherwise.\n|\n|      A string is whitespace if all characters in the string are whitespace and there\n|      is at least one character in the string.\n|\n|  istitle(self, /)\n|      Return True if the string is a title-cased string, False otherwise.\n|\n|      In a title-cased string, upper- and title-case characters may only\n|      follow uncased characters and lowercase characters only cased ones.\n|\n|  isupper(self, /)\n|      Return True if the string is an uppercase string, False otherwise.\n|\n|      A string is uppercase if all cased characters in the string are uppercase and\n|      there is at least one cased character in the string.\n|\n|  join(self, iterable, /)\n|      Concatenate any number of strings.\n|\n|      The string whose method is called is inserted in between each given string.\n|      The result is returned as a new string.\n|\n|      Example: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'\n|\n|  ljust(self, width, fillchar=' ', /)\n|      Return a left-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  lower(self, /)\n|      Return a copy of the string converted to lowercase.\n|\n|  lstrip(self, chars=None, /)\n|      Return a copy of the string with leading whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  partition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string.  If the separator is found,\n|      returns a 3-tuple containing the part before the separator, the separator\n|      itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing the original string\n|      and two empty strings.\n|\n|  removeprefix(self, prefix, /)\n|      Return a str with the given prefix string removed if present.\n|\n|      If the string starts with the prefix string, return string[len(prefix):].\n|      Otherwise, return a copy of the original string.\n|\n|  removesuffix(self, suffix, /)\n|      Return a str with the given suffix string removed if present.\n|\n|      If the string ends with the suffix string and that suffix is not empty,\n|      return string[:-len(suffix)]. Otherwise, return a copy of the original\n|      string.\n|\n|  replace(self, old, new, count=-1, /)\n|      Return a copy with all occurrences of substring old replaced by new.\n|\n|        count\n|          Maximum number of occurrences to replace.\n|          -1 (the default value) means replace all occurrences.\n|\n|      If the optional argument count is given, only the first count occurrences are\n|      replaced.\n|\n|  rfind(...)\n|      S.rfind(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  rindex(...)\n|      S.rindex(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  rjust(self, width, fillchar=' ', /)\n|      Return a right-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  rpartition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string, starting at the end. If\n|      the separator is found, returns a 3-tuple containing the part before the\n|      separator, the separator itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing two empty strings\n|      and the original string.\n|\n|  rsplit(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Splitting starts at the end of the string and works to the front.\n|\n|  rstrip(self, chars=None, /)\n|      Return a copy of the string with trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  split(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Note, str.split() is mainly useful for data that has been intentionally\n|      delimited.  With natural text that includes punctuation, consider using\n|      the regular expression module.\n|\n|  splitlines(self, /, keepends=False)\n|      Return a list of the lines in the string, breaking at line boundaries.\n|\n|      Line breaks are not included in the resulting list unless keepends is given and\n|      true.\n|\n|  startswith(...)\n|      S.startswith(prefix[, start[, end]]) -> bool\n|\n|      Return True if S starts with the specified prefix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      prefix can also be a tuple of strings to try.\n|\n|  strip(self, chars=None, /)\n|      Return a copy of the string with leading and trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  swapcase(self, /)\n|      Convert uppercase characters to lowercase and lowercase characters to uppercase.\n|\n|  title(self, /)\n|      Return a version of the string where each word is titlecased.\n|\n|      More specifically, words start with uppercased characters and all remaining\n|      cased characters have lower case.\n|\n|  translate(self, table, /)\n|      Replace each character in the string using the given translation table.\n|\n|        table\n|          Translation table, which must be a mapping of Unicode ordinals to\n|          Unicode ordinals, strings, or None.\n|\n|      The table must implement lookup/indexing via getitem, for instance a\n|      dictionary or list.  If this operation raises LookupError, the character is\n|      left untouched.  Characters mapped to None are deleted.\n|\n|  upper(self, /)\n|      Return a copy of the string converted to uppercase.\n|\n|  zfill(self, width, /)\n|      Pad a numeric string with zeros on the left, to fill a field of the given width.\n|\n|      The string is never truncated.\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from builtins.str:\n|\n|  maketrans(...)\n|      Return a translation table usable for str.translate().\n|\n|      If there is only one argument, it must be a dictionary mapping Unicode\n|      ordinals (integers) or characters to Unicode ordinals, strings or None.\n|      Character keys will be then converted to ordinals.\n|      If there are two arguments, they must be strings of equal length, and\n|      in the resulting dictionary, each character in x will be mapped to the\n|      character at the same position in y. If there is a third argument, it\n|      must be a string, whose characters will be mapped to None in the result.\n\n#### class String\n\n|  dbus.String(value: str or unicode[, variantlevel: int])\n|\n|  A string represented using Unicode - a subtype of ``unicode`` (Python 2)\n|  or ``str`` (Python 3).\n|\n|  All strings on D-Bus are required to be valid Unicode; in the \"wire\n|  protocol\" they're transported as UTF-8.\n|\n|  By default, when strings are converted from D-Bus to Python, they\n|  come out as this class. In Python 2, if you prefer to get UTF-8 strings\n|  (as instances\n|  of a subtype of `str`) or you want to avoid the conversion overhead of\n|  going from UTF-8 to Python's internal Unicode representation, see the\n|  documentation for `dbus.UTF8String`.\n|\n|  variantlevel must be non-negative; the default is 0.\n|\n|  Method resolution order:\n|      String\n|      builtins.str\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors defined here:\n|\n|  variantlevel\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an array, this is represented in Python by a\n|      String or UTF8String with variantlevel==2.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.str:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  format(self, formatspec, /)\n|      Return a formatted version of the string as described by formatspec.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getitem(self, key, /)\n|      Return self[key].\n|\n|  getnewargs(...)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  sizeof(self, /)\n|      Return the size of the string in memory, in bytes.\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  capitalize(self, /)\n|      Return a capitalized version of the string.\n|\n|      More specifically, make the first character have upper case and the rest lower\n|      case.\n|\n|  casefold(self, /)\n|      Return a version of the string suitable for caseless comparisons.\n|\n|  center(self, width, fillchar=' ', /)\n|      Return a centered string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  count(...)\n|      S.count(sub[, start[, end]]) -> int\n|\n|      Return the number of non-overlapping occurrences of substring sub in\n|      string S[start:end].  Optional arguments start and end are\n|      interpreted as in slice notation.\n|\n|  encode(self, /, encoding='utf-8', errors='strict')\n|      Encode the string using the codec registered for encoding.\n|\n|      encoding\n|        The encoding in which to encode the string.\n|      errors\n|        The error handling scheme to use for encoding errors.\n|        The default is 'strict' meaning that encoding errors raise a\n|        UnicodeEncodeError.  Other possible values are 'ignore', 'replace' and\n|        'xmlcharrefreplace' as well as any other name registered with\n|        codecs.registererror that can handle UnicodeEncodeErrors.\n|\n|  endswith(...)\n|      S.endswith(suffix[, start[, end]]) -> bool\n|\n|      Return True if S ends with the specified suffix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      suffix can also be a tuple of strings to try.\n|\n|  expandtabs(self, /, tabsize=8)\n|      Return a copy where all tab characters are expanded using spaces.\n|\n|      If tabsize is not given, a tab size of 8 characters is assumed.\n|\n|  find(...)\n|      S.find(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  format(...)\n|      S.format(*args, kwargs) -> str\n|\n|      Return a formatted version of S, using substitutions from args and kwargs.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  formatmap(...)\n|      S.formatmap(mapping) -> str\n|\n|      Return a formatted version of S, using substitutions from mapping.\n|      The substitutions are identified by braces ('{' and '}').\n|\n|  index(...)\n|      S.index(sub[, start[, end]]) -> int\n|\n|      Return the lowest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  isalnum(self, /)\n|      Return True if the string is an alpha-numeric string, False otherwise.\n|\n|      A string is alpha-numeric if all characters in the string are alpha-numeric and\n|      there is at least one character in the string.\n|\n|  isalpha(self, /)\n|      Return True if the string is an alphabetic string, False otherwise.\n|\n|      A string is alphabetic if all characters in the string are alphabetic and there\n|      is at least one character in the string.\n|\n|  isascii(self, /)\n|      Return True if all characters in the string are ASCII, False otherwise.\n|\n|      ASCII characters have code points in the range U+0000-U+007F.\n|      Empty string is ASCII too.\n|\n|  isdecimal(self, /)\n|      Return True if the string is a decimal string, False otherwise.\n|\n|      A string is a decimal string if all characters in the string are decimal and\n|      there is at least one character in the string.\n|\n|  isdigit(self, /)\n|      Return True if the string is a digit string, False otherwise.\n|\n|      A string is a digit string if all characters in the string are digits and there\n|      is at least one character in the string.\n|\n|  isidentifier(self, /)\n|      Return True if the string is a valid Python identifier, False otherwise.\n|\n|      Call keyword.iskeyword(s) to test whether string s is a reserved identifier,\n|      such as \"def\" or \"class\".\n|\n|  islower(self, /)\n|      Return True if the string is a lowercase string, False otherwise.\n|\n|      A string is lowercase if all cased characters in the string are lowercase and\n|      there is at least one cased character in the string.\n|\n|  isnumeric(self, /)\n|      Return True if the string is a numeric string, False otherwise.\n|\n|      A string is numeric if all characters in the string are numeric and there is at\n|      least one character in the string.\n|\n|  isprintable(self, /)\n|      Return True if the string is printable, False otherwise.\n|\n|      A string is printable if all of its characters are considered printable in\n|      repr() or if it is empty.\n|\n|  isspace(self, /)\n|      Return True if the string is a whitespace string, False otherwise.\n|\n|      A string is whitespace if all characters in the string are whitespace and there\n|      is at least one character in the string.\n|\n|  istitle(self, /)\n|      Return True if the string is a title-cased string, False otherwise.\n|\n|      In a title-cased string, upper- and title-case characters may only\n|      follow uncased characters and lowercase characters only cased ones.\n|\n|  isupper(self, /)\n|      Return True if the string is an uppercase string, False otherwise.\n|\n|      A string is uppercase if all cased characters in the string are uppercase and\n|      there is at least one cased character in the string.\n|\n|  join(self, iterable, /)\n|      Concatenate any number of strings.\n|\n|      The string whose method is called is inserted in between each given string.\n|      The result is returned as a new string.\n|\n|      Example: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'\n|\n|  ljust(self, width, fillchar=' ', /)\n|      Return a left-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  lower(self, /)\n|      Return a copy of the string converted to lowercase.\n|\n|  lstrip(self, chars=None, /)\n|      Return a copy of the string with leading whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  partition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string.  If the separator is found,\n|      returns a 3-tuple containing the part before the separator, the separator\n|      itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing the original string\n|      and two empty strings.\n|\n|  removeprefix(self, prefix, /)\n|      Return a str with the given prefix string removed if present.\n|\n|      If the string starts with the prefix string, return string[len(prefix):].\n|      Otherwise, return a copy of the original string.\n|\n|  removesuffix(self, suffix, /)\n|      Return a str with the given suffix string removed if present.\n|\n|      If the string ends with the suffix string and that suffix is not empty,\n|      return string[:-len(suffix)]. Otherwise, return a copy of the original\n|      string.\n|\n|  replace(self, old, new, count=-1, /)\n|      Return a copy with all occurrences of substring old replaced by new.\n|\n|        count\n|          Maximum number of occurrences to replace.\n|          -1 (the default value) means replace all occurrences.\n|\n|      If the optional argument count is given, only the first count occurrences are\n|      replaced.\n|\n|  rfind(...)\n|      S.rfind(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Return -1 on failure.\n|\n|  rindex(...)\n|      S.rindex(sub[, start[, end]]) -> int\n|\n|      Return the highest index in S where substring sub is found,\n|      such that sub is contained within S[start:end].  Optional\n|      arguments start and end are interpreted as in slice notation.\n|\n|      Raises ValueError when the substring is not found.\n|\n|  rjust(self, width, fillchar=' ', /)\n|      Return a right-justified string of length width.\n|\n|      Padding is done using the specified fill character (default is a space).\n|\n|  rpartition(self, sep, /)\n|      Partition the string into three parts using the given separator.\n|\n|      This will search for the separator in the string, starting at the end. If\n|      the separator is found, returns a 3-tuple containing the part before the\n|      separator, the separator itself, and the part after it.\n|\n|      If the separator is not found, returns a 3-tuple containing two empty strings\n|      and the original string.\n|\n|  rsplit(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Splitting starts at the end of the string and works to the front.\n|\n|  rstrip(self, chars=None, /)\n|      Return a copy of the string with trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  split(self, /, sep=None, maxsplit=-1)\n|      Return a list of the substrings in the string, using sep as the separator string.\n|\n|        sep\n|          The separator used to split the string.\n|\n|          When set to None (the default value), will split on any whitespace\n|          character (including \\\\n \\\\r \\\\t \\\\f and spaces) and will discard\n|          empty strings from the result.\n|        maxsplit\n|          Maximum number of splits (starting from the left).\n|          -1 (the default value) means no limit.\n|\n|      Note, str.split() is mainly useful for data that has been intentionally\n|      delimited.  With natural text that includes punctuation, consider using\n|      the regular expression module.\n|\n|  splitlines(self, /, keepends=False)\n|      Return a list of the lines in the string, breaking at line boundaries.\n|\n|      Line breaks are not included in the resulting list unless keepends is given and\n|      true.\n|\n|  startswith(...)\n|      S.startswith(prefix[, start[, end]]) -> bool\n|\n|      Return True if S starts with the specified prefix, False otherwise.\n|      With optional start, test S beginning at that position.\n|      With optional end, stop comparing S at that position.\n|      prefix can also be a tuple of strings to try.\n|\n|  strip(self, chars=None, /)\n|      Return a copy of the string with leading and trailing whitespace removed.\n|\n|      If chars is given and not None, remove characters in chars instead.\n|\n|  swapcase(self, /)\n|      Convert uppercase characters to lowercase and lowercase characters to uppercase.\n|\n|  title(self, /)\n|      Return a version of the string where each word is titlecased.\n|\n|      More specifically, words start with uppercased characters and all remaining\n|      cased characters have lower case.\n|\n|  translate(self, table, /)\n|      Replace each character in the string using the given translation table.\n|\n|        table\n|          Translation table, which must be a mapping of Unicode ordinals to\n|          Unicode ordinals, strings, or None.\n|\n|      The table must implement lookup/indexing via getitem, for instance a\n|      dictionary or list.  If this operation raises LookupError, the character is\n|      left untouched.  Characters mapped to None are deleted.\n|\n|  upper(self, /)\n|      Return a copy of the string converted to uppercase.\n|\n|  zfill(self, width, /)\n|      Pad a numeric string with zeros on the left, to fill a field of the given width.\n|\n|      The string is never truncated.\n|\n|  ----------------------------------------------------------------------\n|  Static methods inherited from builtins.str:\n|\n|  maketrans(...)\n|      Return a translation table usable for str.translate().\n|\n|      If there is only one argument, it must be a dictionary mapping Unicode\n|      ordinals (integers) or characters to Unicode ordinals, strings or None.\n|      Character keys will be then converted to ordinals.\n|      If there are two arguments, they must be strings of equal length, and\n|      in the resulting dictionary, each character in x will be mapped to the\n|      character at the same position in y. If there is a third argument, it\n|      must be a string, whose characters will be mapped to None in the result.\n\n#### class Struct\n\n|  Struct(iterable=(), /)\n|\n|  dbus.Struct(iterable, signature=None, variantlevel=0)\n|\n|  An structure containing items of possibly distinct types.\n|\n|  D-Bus structs may not be empty, so the iterable argument is required and\n|  may not be an empty iterable.\n|\n|  ``signature`` is either None, or a string representing the contents of the\n|  struct as one or more complete type signatures. The overall signature of\n|  the struct will be the given signature enclosed in parentheses, ``()``.\n|\n|  If the signature is None (default) it will be guessed\n|  from the types of the items during construction.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a struct, this is represented in Python by a\n|      Struct with variantlevel==2.\n|\n|  Method resolution order:\n|      Struct\n|      builtins.tuple\n|      builtins.object\n|\n|  Methods defined here:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.tuple:\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  contains(self, key, /)\n|      Return key in self.\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getitem(self, key, /)\n|      Return self[key].\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  iter(self, /)\n|      Implement iter(self).\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  len(self, /)\n|      Return len(self).\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  count(self, value, /)\n|      Return number of occurrences of value.\n|\n|  index(self, value, start=0, stop=9223372036854775807, /)\n|      Return first index of value.\n|\n|      Raises ValueError if the value is not present.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.tuple:\n|\n|  classgetitem(...) from builtins.type\n|      See PEP 585\n\n#### class UInt16\n\n|  dbus.UInt16(value: int[, variantlevel: int])\n|\n|  An unsigned 16-bit integer between 0 and 0xFFFF, represented as\n|  a subtype of ``int``.\n|\n|  ``value`` must be within the allowed range, or `OverflowError` will be\n|  raised.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a uint16, this is represented in Python by a\n|      UInt16 with variantlevel==2.\n|\n|  Method resolution order:\n|      UInt16\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class UInt32\n\n|  dbus.UInt32(value: int[, variantlevel: int])\n|\n|  An unsigned 32-bit integer between 0 and 0xFFFF FFFF, represented as a\n|  subtype of ``long`` in Python 2 or ``int`` in Python 3.\n|\n|  ``value`` must be within the allowed range, or `OverflowError` will be\n|  raised.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a uint32, this is represented in Python by a\n|      UInt32 with variantlevel==2.\n|\n|  Method resolution order:\n|      UInt32\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class UInt64\n\n|  dbus.UInt64(value: int[, variantlevel: int])\n|\n|  An unsigned 64-bit integer between 0 and 0xFFFF FFFF FFFF FFFF,\n|  subtype of ``long`` in Python 2 or ``int`` in Python 3.\n|\n|  ``value`` must be within the allowed range, or `OverflowError` will be\n|  raised.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a uint64, this is represented in Python by a\n|      UInt64 with variantlevel==2.\n|\n|  Method resolution order:\n|      UInt64\n|      dbusbindings.LongBase\n|      builtins.int\n|      builtins.object\n|\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from dbusbindings.LongBase:\n|\n|  delattr(self, name, /)\n|      Implement delattr(self, name).\n|\n|  getattribute(self, name, /)\n|      Return getattr(self, name).\n|\n|  repr(self, /)\n|      Return repr(self).\n|\n|  setattr(self, name, value, /)\n|      Implement setattr(self, name, value).\n|\n|  str(self, /)\n|      Return str(self).\n|\n|  ----------------------------------------------------------------------\n|  Methods inherited from builtins.int:\n|\n|  abs(self, /)\n|      abs(self)\n|\n|  add(self, value, /)\n|      Return self+value.\n|\n|  and(self, value, /)\n|      Return self&value.\n|\n|  bool(self, /)\n|      True if self else False\n|\n|  ceil(...)\n|      Ceiling of an Integral returns itself.\n|\n|  divmod(self, value, /)\n|      Return divmod(self, value).\n|\n|  eq(self, value, /)\n|      Return self==value.\n|\n|  float(self, /)\n|      float(self)\n|\n|  floor(...)\n|      Flooring an Integral returns itself.\n|\n|  floordiv(self, value, /)\n|      Return self//value.\n|\n|  format(self, formatspec, /)\n|      Default object formatter.\n|\n|  ge(self, value, /)\n|      Return self>=value.\n|\n|  getnewargs(self, /)\n|\n|  gt(self, value, /)\n|      Return self>value.\n|\n|  hash(self, /)\n|      Return hash(self).\n|\n|  index(self, /)\n|      Return self converted to an integer, if self is suitable for use as an index into a list.\n|\n|  int(self, /)\n|      int(self)\n|\n|  invert(self, /)\n|      ~self\n|\n|  le(self, value, /)\n|      Return self<=value.\n|\n|  lshift(self, value, /)\n|      Return self<<value.\n|\n|  lt(self, value, /)\n|      Return self<value.\n|\n|  mod(self, value, /)\n|      Return self%value.\n|\n|  mul(self, value, /)\n|      Return self*value.\n|\n|  ne(self, value, /)\n|      Return self!=value.\n|\n|  neg(self, /)\n|      -self\n|\n|  or(self, value, /)\n|      Return self|value.\n|\n|  pos(self, /)\n|      +self\n|\n|  pow(self, value, mod=None, /)\n|      Return pow(self, value, mod).\n|\n|  radd(self, value, /)\n|      Return value+self.\n|\n|  rand(self, value, /)\n|      Return value&self.\n|\n|  rdivmod(self, value, /)\n|      Return divmod(value, self).\n|\n|  rfloordiv(self, value, /)\n|      Return value//self.\n|\n|  rlshift(self, value, /)\n|      Return value<<self.\n|\n|  rmod(self, value, /)\n|      Return value%self.\n|\n|  rmul(self, value, /)\n|      Return value*self.\n|\n|  ror(self, value, /)\n|      Return value|self.\n|\n|  round(...)\n|      Rounding an Integral returns itself.\n|\n|      Rounding with an ndigits argument also returns an integer.\n|\n|  rpow(self, value, mod=None, /)\n|      Return pow(value, self, mod).\n|\n|  rrshift(self, value, /)\n|      Return value>>self.\n|\n|  rshift(self, value, /)\n|      Return self>>value.\n|\n|  rsub(self, value, /)\n|      Return value-self.\n|\n|  rtruediv(self, value, /)\n|      Return value/self.\n|\n|  rxor(self, value, /)\n|      Return value^self.\n|\n|  sizeof(self, /)\n|      Returns size in memory, in bytes.\n|\n|  sub(self, value, /)\n|      Return self-value.\n|\n|  truediv(self, value, /)\n|      Return self/value.\n|\n|  trunc(...)\n|      Truncating an Integral returns itself.\n|\n|  xor(self, value, /)\n|      Return self^value.\n|\n|  asintegerratio(self, /)\n|      Return integer ratio.\n|\n|      Return a pair of integers, whose ratio is exactly equal to the original int\n|      and with a positive denominator.\n|\n|      >>> (10).asintegerratio()\n|      (10, 1)\n|      >>> (-10).asintegerratio()\n|      (-10, 1)\n|      >>> (0).asintegerratio()\n|      (0, 1)\n|\n|  bitcount(self, /)\n|      Number of ones in the binary representation of the absolute value of self.\n|\n|      Also known as the population count.\n|\n|      >>> bin(13)\n|      '0b1101'\n|      >>> (13).bitcount()\n|      3\n|\n|  bitlength(self, /)\n|      Number of bits necessary to represent self in binary.\n|\n|      >>> bin(37)\n|      '0b100101'\n|      >>> (37).bitlength()\n|      6\n|\n|  conjugate(...)\n|      Returns self, the complex conjugate of any int.\n|\n|  tobytes(self, /, length, byteorder, *, signed=False)\n|      Return an array of bytes representing an integer.\n|\n|      length\n|        Length of bytes object to use.  An OverflowError is raised if the\n|        integer is not representable with the given number of bytes.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Determines whether two's complement is used to represent the integer.\n|        If signed is False and a negative integer is given, an OverflowError\n|        is raised.\n|\n|  ----------------------------------------------------------------------\n|  Class methods inherited from builtins.int:\n|\n|  frombytes(bytes, byteorder, *, signed=False) from builtins.type\n|      Return the integer represented by the given array of bytes.\n|\n|      bytes\n|        Holds the array of bytes to convert.  The argument must either\n|        support the buffer protocol or be an iterable object producing bytes.\n|        Bytes and bytearray are examples of built-in objects that support the\n|        buffer protocol.\n|      byteorder\n|        The byte order used to represent the integer.  If byteorder is 'big',\n|        the most significant byte is at the beginning of the byte array.  If\n|        byteorder is 'little', the most significant byte is at the end of the\n|        byte array.  To request the native byte order of the host system, use\n|        `sys.byteorder' as the byte order value.\n|      signed\n|        Indicates whether two's complement is used to represent the integer.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors inherited from builtins.int:\n|\n|  denominator\n|      the denominator of a rational number in lowest terms\n|\n|  imag\n|      the imaginary part of a complex number\n|\n|  numerator\n|      the numerator of a rational number in lowest terms\n|\n|  real\n|      the real part of a complex number\n\n#### class UnixFd\n\n|  dbus.UnixFd(value: int or file object[, variantlevel: int])\n|\n|  A Unix Fd.\n|\n|  ``value`` must be the integer value of a file descriptor, or an object that\n|  implements the fileno() method. Otherwise, `ValueError` will be\n|  raised.\n|\n|  UnixFd keeps a dup() (duplicate) of the supplied file descriptor. The\n|  caller remains responsible for closing the original fd.\n|\n|  :py:attr:`variantlevel` must be non-negative; the default is 0.\n|\n|  .. py:attribute:: variantlevel\n|\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing an Unix Fd, this is represented in Python by an\n|      Unix Fd with variantlevel==2.\n|\n|  Methods defined here:\n|\n|  take(...)\n|      take() -> int\n|\n|      This method returns the file descriptor owned by UnixFd object.\n|      Note that, once this method is called, closing the file descriptor is\n|      the caller's responsibility.\n|\n|      This method may be called at most once; UnixFd 'forgets' the file\n|      descriptor after it is taken.\n|\n|      :Raises ValueError: if this method has already been called\n|\n|  ----------------------------------------------------------------------\n|  Static methods defined here:\n|\n|  new(*args, kwargs) from builtins.type\n|      Create and return a new object.  See help(type) for accurate signature.\n|\n|  ----------------------------------------------------------------------\n|  Data descriptors defined here:\n|\n|  variantlevel\n|      Indicates how many nested Variant containers this object\n|      is contained in: if a message's wire format has a variant containing a\n|      variant containing a file descriptor, this is represented in Python by\n|      a UnixFd with variantlevel==2.\n\n### FUNCTIONS\n\n#### get_default_main_loop\n\ngetdefaultmainloop() -> object\n\nReturn the global default dbus-python main loop wrapper, which is used\nwhen no main loop wrapper is passed to the Connection constructor.\n\nIf None, there is no default and you should always pass the mainloop\nparameter to the constructor - if you don't, then asynchronous calls,\nconnecting to signals and exporting objects will raise an exception.\nThere is no default until setdefaultmainloop is called.\n\n#### set_default_main_loop\n\nsetdefaultmainloop(object)\n\nChange the global default dbus-python main loop wrapper, which is used\nwhen no main loop wrapper is passed to the Connection constructor.\n\nIf None, return to the initial situation: there is no default, and you\nmust always pass the mainloop parameter to the constructor.\n\nTwo types of main loop wrapper are planned in dbus-python.\nNative main-loop wrappers are instances of `dbus.mainloop.NativeMainLoop`\nsupplied by extension modules like `dbus.mainloop.glib`: they have no\nPython API, but connect themselves to ``libdbus`` using native code.\nPython main-loop wrappers are not yet implemented. They will be objects\nsupporting the interface defined by `dbus.mainloop.MainLoop`, with an\nAPI entirely based on Python methods.\n\n#### validate_bus_name\n\nvalidatebusname(name, allowunique=True, allowwellknown=True)\n\nRaise ValueError if the argument is not a valid bus name.\n\nBy default both unique and well-known names are accepted.\n\n:Parameters:\n`name` : str\nThe name to be validated\n`allowunique` : bool\nIf False, unique names of the form :1.123 will be rejected\n`allowwellknown` : bool\nIf False, well-known names of the form com.example.Foo\nwill be rejected\n:Since: 0.80\n\n#### validate_error_name\n\nvalidateerrorname(name)\n\nRaise ValueError if the given string is not a valid error name.\n\n:Since: 0.80\n\n#### validate_interface_name\n\nvalidateinterfacename(name)\n\nRaise ValueError if the given string is not a valid interface name.\n\n:Since: 0.80\n\n#### validate_member_name\n\nvalidatemembername(name)\n\nRaise ValueError if the argument is not a valid member (signal or method) name.\n\n:Since: 0.80\n\n#### validate_object_path\n\nvalidateobjectpath(name)\n\nRaise ValueError if the given string is not a valid object path.\n\n:Since: 0.80\n\n### DATA\n\nBUSDAEMONIFACE = 'org.freedesktop.DBus'\nBUSDAEMONNAME = 'org.freedesktop.DBus'\nBUSDAEMONPATH = '/org/freedesktop/DBus'\nBUSSESSION = 0\nBUSSTARTER = 2\nBUSSYSTEM = 1\nDBUSINTROSPECT10XMLDOCTYPEDECLNODE = '<!DOCTYPE node PUBLIC \"-/...\nDBUSINTROSPECT10XMLPUBLICIDENTIFIER = '-//freedesktop//DTD D-BUS...\nDBUSINTROSPECT10XMLSYSTEMIDENTIFIER = 'http://www.freedesktop.or...\nDBUSSTARTREPLYALREADYRUNNING = 2\nDBUSSTARTREPLYSUCCESS = 1\nDICTENTRYBEGIN = 123\nDICTENTRYEND = 125\nHANDLERRESULTHANDLED = 0\nHANDLERRESULTNEEDMEMORY = 2\nHANDLERRESULTNOTYETHANDLED = 1\nINTROSPECTABLEIFACE = 'org.freedesktop.DBus.Introspectable'\nLOCALIFACE = 'org.freedesktop.DBus.Local'\nLOCALPATH = '/org/freedesktop/DBus/Local'\nMESSAGETYPEERROR = 3\nMESSAGETYPEINVALID = 0\nMESSAGETYPEMETHODCALL = 1\nMESSAGETYPEMETHODRETURN = 2\nMESSAGETYPESIGNAL = 4\nNAMEFLAGALLOWREPLACEMENT = 1\nNAMEFLAGDONOTQUEUE = 4\nNAMEFLAGREPLACEEXISTING = 2\nNULLMAINLOOP = <dbus.mainloop.NativeMainLoop object>\nPEERIFACE = 'org.freedesktop.DBus.Peer'\nPROPERTIESIFACE = 'org.freedesktop.DBus.Properties'\nRELEASENAMEREPLYNONEXISTENT = 2\nRELEASENAMEREPLYNOTOWNER = 3\nRELEASENAMEREPLYRELEASED = 1\nREQUESTNAMEREPLYALREADYOWNER = 4\nREQUESTNAMEREPLYEXISTS = 3\nREQUESTNAMEREPLYINQUEUE = 2\nREQUESTNAMEREPLYPRIMARYOWNER = 1\nSTRUCTBEGIN = 40\nSTRUCTEND = 41\nTYPEARRAY = 97\nTYPEBOOLEAN = 98\nTYPEBYTE = 121\nTYPEDICTENTRY = 101\nTYPEDOUBLE = 100\nTYPEINT16 = 110\nTYPEINT32 = 105\nTYPEINT64 = 120\nTYPEINVALID = 0\nTYPEOBJECTPATH = 111\nTYPESIGNATURE = 103\nTYPESTRING = 115\nTYPESTRUCT = 114\nTYPEUINT16 = 113\nTYPEUINT32 = 117\nTYPEUINT64 = 116\nTYPEUNIXFD = 104\nTYPEVARIANT = 118\nWATCHERROR = 4\nWATCHHANGUP = 8\nWATCHREADABLE = 1\nWATCHWRITABLE = 2\ndocformat = 'restructuredtext'\n\n### VERSION\n\n1.2.18\n\n### FILE\n\n/usr/lib/python3/dist-packages/dbusbindings.cpython-310-x8664-linux-gnu.so\n\n"
        }
    ],
    "structuredContent": {
        "command": "_dbus_bindings",
        "section": "",
        "mode": "pydoc",
        "summary": "dbusbindings",
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "CLASSES",
                "lines": 35,
                "subsections": [
                    {
                        "name": "class Array",
                        "lines": 173
                    },
                    {
                        "name": "class Boolean",
                        "lines": 282
                    },
                    {
                        "name": "class Byte",
                        "lines": 287
                    },
                    {
                        "name": "class ByteArray",
                        "lines": 429
                    },
                    {
                        "name": "class Connection",
                        "lines": 173
                    },
                    {
                        "name": "class Dictionary",
                        "lines": 165
                    },
                    {
                        "name": "class Double",
                        "lines": 218
                    },
                    {
                        "name": "class ErrorMessage",
                        "lines": 257
                    },
                    {
                        "name": "class Int16",
                        "lines": 280
                    },
                    {
                        "name": "class Int32",
                        "lines": 280
                    },
                    {
                        "name": "class Int64",
                        "lines": 284
                    },
                    {
                        "name": "class Message",
                        "lines": 244
                    },
                    {
                        "name": "class MethodCallMessage",
                        "lines": 270
                    },
                    {
                        "name": "class MethodReturnMessage",
                        "lines": 257
                    },
                    {
                        "name": "class NativeMainLoop",
                        "lines": 3
                    },
                    {
                        "name": "class ObjectPath",
                        "lines": 436
                    },
                    {
                        "name": "class PendingCall",
                        "lines": 28
                    },
                    {
                        "name": "class SignalMessage",
                        "lines": 260
                    },
                    {
                        "name": "class Signature",
                        "lines": 442
                    },
                    {
                        "name": "class String",
                        "lines": 446
                    },
                    {
                        "name": "class Struct",
                        "lines": 111
                    },
                    {
                        "name": "class UInt16",
                        "lines": 280
                    },
                    {
                        "name": "class UInt32",
                        "lines": 280
                    },
                    {
                        "name": "class UInt64",
                        "lines": 280
                    },
                    {
                        "name": "class UnixFd",
                        "lines": 49
                    }
                ]
            },
            {
                "name": "FUNCTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "get_default_main_loop",
                        "lines": 10
                    },
                    {
                        "name": "set_default_main_loop",
                        "lines": 16
                    },
                    {
                        "name": "validate_bus_name",
                        "lines": 16
                    },
                    {
                        "name": "validate_error_name",
                        "lines": 6
                    },
                    {
                        "name": "validate_interface_name",
                        "lines": 6
                    },
                    {
                        "name": "validate_member_name",
                        "lines": 6
                    },
                    {
                        "name": "validate_object_path",
                        "lines": 6
                    }
                ]
            },
            {
                "name": "DATA",
                "lines": 63,
                "subsections": []
            },
            {
                "name": "VERSION",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "FILE",
                "lines": 3,
                "subsections": []
            }
        ]
    }
}