Maybe it should return `arguments`?

```js
this.boundEvents = _.map(this.bindings, function(binding) {
  return this.delegate(binding.eventName, binding.selector, function() {
    cond ? binding.listener() : error();
  });
});

_.each(this.boundEvents, function(binding) {
  this.undelegate.apply(this, binding);
});
```

Better than the alternative:
```js
this.boundEvents = _.map(this.bindings, function(binding) {
  var args = [binding.eventName, binding.selector,  function() {
    cond ? binding.listener() : error();
  }];
  this.delegate.apply(this, args);
  return args;
});

_.each(this.boundEvents, function(binding) {
  this.undelegate.apply(this, binding);
});
```