function addN_(tensors) {
    _util.assert(Array.isArray(tensors), ()=>"The argument passed to tf.addN() must be a list of tensors");
    _util.assert(tensors.length >= 1, ()=>`Must pass at least one tensor to tf.addN(), but got ` + `${tensors.length}`);
    const $tensors = tensors.map((t, i)=>(0, _tensorUtilEnv.convertToTensor)(t, `tensors${i}`, "addN"));
    const firstTensor = $tensors[0];
    $tensors.forEach((t)=>{
        if (t.dtype !== firstTensor.dtype) throw new Error("All tensors passed to tf.addN() must have the same dtype");
    });
    $tensors.forEach((t)=>{
        if (!_util.arraysEqual(t.shape, firstTensor.shape)) throw new Error("All tensors passed to tf.addN() must have the same shape");
    });
    const inputs = $tensors;
    return (0, _engine.ENGINE).runKernel((0, _kernelNames.AddN), inputs);
}
Adds a list of `tf.Tensor`s element-wise, each with the same shape and dtype.

```js
const a = tf.tensor1d([1, 2]);
const b = tf.tensor1d([3, 4]);
const c = tf.tensor1d([5, 6]);

tf.addN([a, b, c]).print();
```
@param tensors A list of tensors with the same shape and dtype.
@doc {heading: 'Operations', subheading: 'Arithmetic'}