"use strict";module.exports=(function(){var r=require("events"),t={};return t.createDomain=t.create=function(){var t=new r.EventEmitter;function e(r){t.emit("error",r)}return t.add=function(r){r.on("error",e)},t.remove=function(r){r.removeListener("error",e)},t.bind=function(r){return function(){var t=Array.prototype.slice.call(arguments);try{r.apply(null,t)}catch(r){e(r)}}},t.intercept=function(r){return function(t){if(t)e(t);else{var n=Array.prototype.slice.call(arguments,1);try{r.apply(null,n)}catch(r){e(r)}}}},t.run=function(r){try{r()}catch(r){e(r)}return this},t.dispose=function(){return this.removeAllListeners(),this},t.enter=t.exit=function(){return this},t},t}).call(this);