Function arguments mutation

I fought this beast once for half an hour.

---

Q. What's the result?

```javascript
(function(a, b) {
  arguments[1] = 3;
  return b;
})(1, 2);
```

A.

```javascript
3
```

[JSBin](http://jsbin.com/hajus/1/edit)