def METHOD_NAME(self, cmd, arg=None):
    self._purge()
    s = cmd
    if arg:
        s = s + arg
    self.commandQueue.put('?%s\r' % s)
    cmr, vals = self._decodeResponse(self.replyQueue.get(timeout=3))
    if not cmd == cmr:
        raise RuntimeError('Queried with %s but got response to %s' % (cmd, cmr))
    return vals