code: def deterministic_from_funcs(
          name, eval, jacobians={}, jacobian_formats={}, dtype=np.float, mv=False):
      
  
      (args, defaults) = get_signature(eval)
      parent_names = args[0:]
      try:
          parents_default = dict(zip(args[-len(defaults):], defaults))
      except TypeError:  # No parents at all.
          parents_default = {}
  
      # Build docstring from distribution
      docstr = name[0] + ' = ' + name + '('.join(parent_names) + ')\n\n'
      docstr += 'Deterministic variable with ' + name + \
          ' distribution.\nParents are: ' + ', '.join(parent_names) + '.\n\n'
      docstr += 'Docstring of evaluatio function:\n'
      docstr += eval.__doc__
  
      return new_deterministic_class(
          dtype, name, parent_names, parents_default, docstr, eval, jacobians, jacobian_formats)
docs: Return a Stochastic subclass made from a particular distribution.
  
      :Parameters:
        name : string
          The name of the new class.
        jacobians : function
          The log-probability function.
        random : function
          The random function
        dtype : numpy dtype
          The dtype of values of instances.
        mv : boolean
          A flag indicating whether this class represents
          array-valued variables.