code: def _predict(distribution, offset, kernel):
      """explicit convolution with wraparound"""
  
      N = len(distribution)
      kN = len(kernel)
      width = int((kN - 1) / 2)
  
      prior = np.zeros(N)
      for i in range(N):
          for k in range(kN):
              index = (i + (width - k) - offset) % N
              prior[i] += distribution[index] * kernel[k]
      return prior
  
imports: from filterpy.discrete_bayes import predict, update, normalize
  from numpy.random import randn, randint
  import numpy
label_desc: Use image node_id 1 for calling a global function with example usage: _predict(distribution, offset, kernel) and returns: prior