define(function () { return function () { var handlers = []; this.bind = function (handler) { handlers.push(handler); } this.trigger = function (_this, arguments) { for (var i = 0; i < handlers.length; i++) { handlers[i].apply(_this, arguments); } } } });