code: def normals(n, state):
      out = np.empty(n)
      for i in range((n + 1) // 2):
          x1 = 2.0 * next_d(state) - 1.0
          x2 = 2.0 * next_d(state) - 1.0
          r2 = x1 * x1 + x2 * x2
          while r2 >= 1.0 or r2 == 0.0:
              x1 = 2.0 * next_d(state) - 1.0
              x2 = 2.0 * next_d(state) - 1.0
              r2 = x1 * x1 + x2 * x2
          f = np.sqrt(-2.0 * np.log(r2) / r2)
          out[2 * i] = f * x1
          if 2 * i + 1 < n:
              out[2 * i + 1] = f * x2
      return out
  
file_path: catboost/contrib/python/numpy/py3/numpy/random/_examples/numba/extending.py
imports: import numpy
  import numba
  from numpy.random import PCG64
  from timeit import timeit
label_desc: Use image node_id 1 for calling a global function with example usage: normals(n, state) and returns: out