Array.prototype.withintermediateconst original = [1, 2, 3]
const updated = original.with(0, 99)
original // β [1, 2, 3] (unchanged)
updated // β [99, 2, 3]with() never mutates the source array β it always returns a new array with the change applied.
with() does not mutate the original array. It always returns a new array.
Implement withNoMutation that calls arr.with(0, 99) but returns the original arr. The original should be unchanged.