code: def make_node(self, rstate, size):
      # error checking slightly redundant here, since
      # this op should not be called directly.
      #
      # call through MRG_RandomStreams instead.
      broad = []
      for i in range(self.output_type.ndim):
          broad.append(tensor.extract_constant(size[i]) == 1)
      output_type = self.output_type.clone(broadcastable=broad)()
      rstate = as_gpuarray_variable(rstate, infer_context_name(rstate))
      return Apply(self, [rstate, size], [rstate.type(), output_type])
  
imports: from __future__ import absolute_import, print_function, division
  from theano import Apply, tensor
  from theano.gof import local_optimizer
  from theano.sandbox.rng_mrg import mrg_uniform_base, mrg_uniform
  from theano.tensor import as_tensor_variable, get_vector_length
  from theano.scalar import int32
  from .basic_ops import GpuKernelBase, Kernel, infer_context_name, GpuFromHost, host_from_gpu, as_gpuarray_variable
  from .type import GpuArrayType, gpu_context_type
  from .fp16_help import write_w
  from .opt import register_opt, register_opt2
label_desc: Use image node_id 1 for calling the GPUA_mrg_uniform obj's underlying member method code with example usage: obj.make_node(rstate, size) and returns: Apply