code: def bootstrap(self, arg=None):
          '''
          This only takes args so it can be used as a callback. Don't
          pass an arg, it is ignored.
          '''
          try:
              d = self.protocol.add_event_listener(
                  'CONF_CHANGED', self._conf_changed)
          except RuntimeError:
              # for Tor versions which don't understand CONF_CHANGED
              # there's nothing we can really do.
              log.msg(
                  "Can't listen for CONF_CHANGED event; won't stay up-to-date "
                  "with other clients.")
              d = defer.succeed(None)
          d.addCallback(lambda _: self.protocol.get_info_raw("config/names"))
          d.addCallback(self._do_setup)
          d.addCallback(self.do_post_bootstrap)
          d.addErrback(self.do_post_errbackf bootstrap(self, arg=None):
          '''
          This only takes args so it can be used as a callback. Don't
          pass an arg, it is ignored.
          '''
          try:
              d = self.protocol.add_event_listener(
                  'CONF_CHANGED', self._conf_changed)
          except RuntimeError:
              # for Tor versions which don't understand CONF_CHANGED
              # there's nothing we can really do.
              log.msg(
                  "Can't listen for CONF_CHANGED event; won't stay up-to-date "
                  "with other clients.")
              d = defer.succeed(None)
          d.addCallback(lambda _: self.protocol.get_info_raw("config/names"))
          d.addCallback(self._do_setup)
          d.addCallback(self.do_post_bootstrap)
          d.addErrback(self.do_post_errback)
docs: This only takes args so it can be used as a callback. Don't
          pass an arg, it is ignored.