code: def polyadd(a1: Array, a2: Array) -> Array:
      check_arraylike("polyadd", a1, a2)
      a1, a2 = promote_dtypes(a1, a2)
      if a2.shape[0] <= a1.shape[0]:
          return a1.at[-a2.shape[0] :].add(a2)
      else:
          return a2.at[-a1.shape[0] :].add(a1)
  
imports: from __future__ import annotations
  from functools import partial
  import operator
  import numpy
  from jax import jit
  from jax import lax
  from jax._src import dtypes
  from jax._src import core
  from jax._src.numpy.lax_numpy import arange, argmin, array, asarray, atleast_1d, concatenate, convolve, diag, dot, finfo, full, ones, outer, roll, trim_zeros, trim_zeros_tol, vander, zeros
  from jax._src.numpy.ufuncs import maximum, true_divide, sqrt
  from jax._src.numpy.reductions import all
  from jax._src.numpy import linalg
  from jax._src.numpy.util import check_arraylike, promote_dtypes, promote_dtypes_inexact, _where, _wraps
  from jax._src.typing import Array, ArrayLike
label_desc: Use image node_id 7 for calling a global function with example usage: polyadd(a1, a2) and returns: a1, a2