code: def draw_random(obj, **kwds):
      
      while True:
          for k, v in six.iteritems(kwds):
              obj.parents[k] = v.next()
          yield obj.random()
docs: Draw random variates from obj.random method.
  
      If the object has parents whose value must be updated, use
      parent_name=trace_generator_function.
  
      Ex:
      R = draw_random(theta, beta=pymc.utils.trace_generator(beta.trace))
      R.next()