code: def logpmf(k: ArrayLike, mu: ArrayLike, loc: ArrayLike = 0) -> Array:
      k, mu, loc = promote_args_inexact("poisson.logpmf", k, mu, loc)
      zero = _lax_const(k, 0)
      x = lax.sub(k, loc)
      log_probs = xlogy(x, mu) - gammaln(x + 1) - mu
      return jnp.where(lax.lt(x, zero), -jnp.inf, log_probs)
  
file_path: jax/jax/_src/scipy/stats/poisson.py
imports: import scipy.stats
  from jax import lax
  import jax.numpy
  from jax._src.lax.lax import _const
  from jax._src.numpy.util import _wraps, promote_args_inexact
  from jax._src.typing import Array, ArrayLike
  from jax.scipy.special import xlogy, gammaln, gammaincc
label_desc: Use image node_id 1 for calling a global function with example usage: logpmf(k, mu, loc) and returns: jnp