code: def multi_adamw_update(
      weights,
      grads,
      mean,
      var,
      rescale_grad,
      lrs,
      wds,
      etas,
      out=None,
      name=None,
      size=0,
      **kwargs,
  ):
      if not size:
          size = len(weights)
  
      rescale_grad = _get_rescale_grad(
          rescale_grad, ctx=weights[0].context
      )
      temp_list = _flatten_list(zip(weights, grads, mean, var)) + [
          rescale_grad
      ]
      return ndarray._internal._multi_adamw_update(
          *temp_list,
          out=out,
          num_weights=size,
          lrs=lrs,
          wds=wds,
          etas=etas,
          name=name,
          **kwargs,
      )
  
imports: import math
  import numpy
  import mxnet
  from ..device import current_device
  from ..random import uniform
  from ..base import _as_list
  from .None import ndarray
label_desc: Use image node_id 14 for calling a global function with example usage: multi_adamw_update(weights, grads, mean, var, rescale_grad, lrs, wds, etas, out, name, size) and returns: ndarray