class_docstr: Factory for instances of :class:`interactive`.
  
  This class is needed to support options like::
  
      >>> @interact.options(manual=True)
      ... def greeting(text="World"):
      ...     print("Hello {}".format(text))
  
  Parameters
  ----------
  cls : class
      The subclass of :class:`interactive` to construct.
  options : dict
      A dict of options used to construct the interactive
      function. By default, this is returned by
      ``cls.default_options()``.
  kwargs : dict
      A dict of **kwargs to use for widgets.
docstr: Change options for interactive functions.
  
  Returns
  -------
  A new :class:`_InteractFactory` which will apply the
  options when called.
code: def options(self, **kwds):
      """
      Change options for interactive functions.
  
      Returns
      -------
      A new :class:`_InteractFactory` which will apply the
      options when called.
      """
      opts = dict(self.opts)
      for k in kwds:
          try:
              # Ensure that the key exists because we want to change
              # existing options, not add new ones.
              _ = opts[k]
          except KeyError:
              raise ValueError("invalid option {!r}".format(k))
          opts[k] = kwds[k]
      return type(self)(self.cls, opts, self.kwargs)
  
imports: from __future__ import print_function
  from __future__ import division
  from inspect import getcallargs
  import sys
  from IPython.core.getipython import get_ipython
  from .None import ValueWidget, Text, FloatSlider, IntSlider, Checkbox, Dropdown, VBox, Button, DOMWidget, Output
  from IPython.display import display, clear_output
  from ipython_genutils.py3compat import string_types, unicode_type
  from traitlets import HasTraits, Any, Unicode, observe
  from numbers import Real, Integral
  from warnings import warn
label_desc: Use image node_id 4 for calling the _InteractFactory obj's underlying member method code with example usage: obj.options() and returns: type