code: def config_flag(self, which, new=None):
          
          flag = _get_flag(which, ConfigFlags)
          if flag:
              if not self.capabilities.have_config_flag(flag):
                  raise yubikey_base.YubiKeyVersionError('Config flag %s requires %s, and this is %s %d.%d'
                                                         % (which, flag.req_string(self.capabilities.model), \
                                                           self.capabilities.model, self.ykver[0], self.ykver[1]))
              req_major, req_minor = flag.req_version()
              self._require_version(major=req_major, minor=req_minor)
              value = flag.to_integer()
          else:
              if type(which) is not int:
                  raise yubico_exception.InputError('Unknown non-integer ConfigFlag (%s)' % which)
              value = which
  
          return self.config_flags.get_set(value, new)
docs: Get or set a config flag.
  
          'which' can be either a string ('PACING_20MS' etc.), or an integer.
          You should ALWAYS use a string, unless you really know what you are doing.