 - After the call to `const z = append(x, y)`, `tail(x) = ["b", null]`. Since `append` creates a new copy of `x` with the elements of `y`.  - After the call to `const w = append_mutator(x, y)`, `tail(x) = ["b", ["c", ["d", null]]]`. Since `append_mutator` sets the tail of the last pair of `x` to `y`.