class_docstr: Initializes array with a normal distribution.
  
  Each element of the array is initialized by the value drawn
  independently from Gaussian distribution whose mean is 0,
  and standard deviation is ``scale``.
  
  Args:
      scale (float): Standard deviation of Gaussian distribution.
      dtype: Data type specifier.
      rng (xp.random.RandomState): Pseudo-random number generator.
class_docstr_tok: ["Initializes","array","with","a","normal","distribution",".","Each","element","of","the","array","is","initialized","by","the","value","drawn","independently","from","Gaussian","distribution","whose","mean","is","0",",","and","standard","deviation","is","``","scale","``",".","Args",":","scale","(","float",")",":","Standard","deviation","of","Gaussian","distribution",".","dtype",":","Data","type","specifier",".","rng","(","xp.random.RandomState",")",":","Pseudo-random","number","generator","."]
code: def __call__(self, array):
      if self.dtype is not None:
          assert array.dtype == self.dtype, "{} != {}".format(
              array.dtype, self.dtype
          )
      if self.rng is None:
          device = backend.get_device_from_array(array)
          args = {"loc": 0.0, "scale": self.scale, "size": array.shape}
          if device.xp is cuda.cupy:
              # Only CuPy supports dtype option
              if (
                  self.dtype == numpy.float32
                  or self.dtype == numpy.float16
              ):
                  # float16 is not supported in cuRAND
                  args["dtype"] = numpy.float32
          array[...] = device.xp.random.normal(**args)
      else:
          backend.copyto(
              array,
              self.rng.normal(
                  loc=0.0, scale=self.scale, size=array.shape
              ).astype(array.dtype, copy=False),
          )
  
imports: import numpy
  from chainer import backend
  from chainer.backends import cuda
  from chainer import initializer
  from chainer.utils import argument
label_desc: Use image node_id 2 for calling the Normal obj's underlying member method code with example usage: obj.__call__(array) without return types