Numba Error with np.where()

Hi! I am trying to do MD simulations with periodic boundaries and seem to have errors with numba everytime I use this function:
def check_boundaries(positions, L):
up, down= np.where(positions > L/2), np.where(-1*positions > L/2)
positions[up] -= L
positions[down] += L
return positions

def simulate(Ncube, T0, L, M, steps, h):
#N = Ncube**3
R = generate_fcc_positions(Ncube, Ncube, Ncube, 1.0, dtype=np.float32)[0]
V = generate_random_velocities(len(R), 3, T0, dtype=np.float32)
A = np.zeros((len(R),3))

K = np.zeros(steps)
E = np.zeros(steps)
Pos_history = np.zeros((steps, len(R), 3), dtype=np.float32)  
distance = np.zeros(steps)

for t in range(0, steps): 
    newEt  = calculate_potential_energy(R, L)
    E[t] = newEt
    F = calculate_forces(R, L)
    A = F/M
    newR = VerletNextR(R, V, A, h, L)
    newR = check_boundaries(newR[0], L) 
    Pos_history[t] = newR.reshape(3,-1).T
    newF = calculate_forces(newR, L)
    newA = newF/M
    newV = VerletNextV(V, A, newA, h)
    # update positions:
    R, V = newR, newV
    K[t] = kinetic_energy(V, M) 
return E, distance, V, Pos_history, K


     msg = (f"{str(e).rstrip()} \n\nThis error may have been caused "
     f"by the following argument(s):\n{args_str}\n")
     e.patch_message(msg) --> 
     error_rewrite(e, 'typing') 
     except errors.UnsupportedError as e: 
     # Something unsupported is present in the user code, add help info 
    error_rewrite(e, 'unsupported_error')