code: def _encode(level, x, y):
      x = np.asarray(x, dtype="uint32")
      y = np.asarray(y, dtype="uint32")
  
      if level > MAX_LEVEL:
          raise ValueError("Level out of range")
  
      x = x << (16 - level)
      y = y << (16 - level)
  
      # Initial prefix scan round, prime with x and y
      a = x ^ y
      b = 0xFFFF ^ a
      c = 0xFFFF ^ (x | y)
      d = x & (y ^ 0xFFFF)
  
      A = a | (b >> 1)
      B = (a >> 1) ^ a
      C = ((c >> 1) ^ (b & (d >> 1))) ^ c
      D = ((a & (c >> 1)) ^ (d >> 1)) ^ d
  
      a = A.copy()
      b = B.copy()
      c = C.copy()
      d = D.copy()
  
      A = (a & (a >> 2)) ^ (b & (b >> 2))
      B = (a & (b >> 2)) ^ (b & ((a ^ b) >> 2))
      C ^= (a & (c >> 2)) ^ (b & (d >> 2))
      D ^= (b & (c >> 2)) ^ ((a ^ b) & (d >> 2))
  
      a = A.copy()
      b = B.copy()
      c = C.copy()
      d = D.copy()
  
      A = (a & (a >> 4)) ^ (b & (b >> 4))
      B = (a & (b >> 4)) ^ (b & ((a ^ b) >> 4))
      C ^= (a & (c >> 4)) ^ (b & (d >> 4))
      D ^= (b & (c >> 4)) ^ ((a ^ b) & (d >> 4))
  
      # Final round and projection
      a = A.copy()
      b = B.copy()
      c = C.copy()
      d = D.copy()
  
      C ^= (a & (c >> 8)) ^ (b & (d >> 8))
      D ^= (b & (c >> 8)) ^ ((a ^ b) & (d >> 8))
  
      # Undo transformation prefix scan
      a = C ^ (C >> 1)
      b = D ^ (D >> 1)
  
      # Recover index bits
      i0 = x ^ y
      i1 = b | (0xFFFF ^ (i0 | a))
  
      return ((_interleave(i1) << 1) | _interleave(i0)) >> (
          32 - 2 * level
      )
  
imports: import numpy
label_desc: Use image node_id 5 for calling a global function with example usage: _encode(level, x, y) and returns: unknown