code: def addai(argname, condition=None):
      r
      # pylint: disable=C0123
      if not isinstance(argname, str):
          raise RuntimeError("Argument `argname` is not valid")
      if (condition is not None) and (type(condition) != bool):
          raise RuntimeError("Argument `condition` is not valid")
      obj = _ExObj(RuntimeError, "Argument `{0}` is not valid".format(argname), condition)
      return obj.craise
docs: r"""
      Add an "AI" exception in the global exception handler.
  
      An "AI" exception is of the type :code:`RuntimeError('Argument
      \`*[argname]*\` is not valid')` where :code:`*[argname]*` is the value of
      the **argname** argument
  
      :param argname: Argument name
      :type  argname: string
  
      :param condition: Flag that indicates whether the exception is
                        raised *(True)* or not *(False)*. If None the flag is not
                        used and no exception is raised
      :type  condition: boolean or None
  
      :rtype: (if condition is not given or None) function
  
      :raises:
       * RuntimeError (Argument \`argname\` is not valid)
  
       * RuntimeError (Argument \`condition\` is not valid)