| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | 
							- var scope = (typeof global !== "undefined" && global) ||
 
-             (typeof self !== "undefined" && self) ||
 
-             window;
 
- var apply = Function.prototype.apply;
 
- // DOM APIs, for completeness
 
- exports.setTimeout = function() {
 
-   return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);
 
- };
 
- exports.setInterval = function() {
 
-   return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);
 
- };
 
- exports.clearTimeout =
 
- exports.clearInterval = function(timeout) {
 
-   if (timeout) {
 
-     timeout.close();
 
-   }
 
- };
 
- function Timeout(id, clearFn) {
 
-   this._id = id;
 
-   this._clearFn = clearFn;
 
- }
 
- Timeout.prototype.unref = Timeout.prototype.ref = function() {};
 
- Timeout.prototype.close = function() {
 
-   this._clearFn.call(scope, this._id);
 
- };
 
- // Does not start the time, just sets up the members needed.
 
- exports.enroll = function(item, msecs) {
 
-   clearTimeout(item._idleTimeoutId);
 
-   item._idleTimeout = msecs;
 
- };
 
- exports.unenroll = function(item) {
 
-   clearTimeout(item._idleTimeoutId);
 
-   item._idleTimeout = -1;
 
- };
 
- exports._unrefActive = exports.active = function(item) {
 
-   clearTimeout(item._idleTimeoutId);
 
-   var msecs = item._idleTimeout;
 
-   if (msecs >= 0) {
 
-     item._idleTimeoutId = setTimeout(function onTimeout() {
 
-       if (item._onTimeout)
 
-         item._onTimeout();
 
-     }, msecs);
 
-   }
 
- };
 
- // setimmediate attaches itself to the global object
 
- require("setimmediate");
 
- // On some exotic environments, it's not clear which object `setimmediate` was
 
- // able to install onto.  Search each possibility in the same order as the
 
- // `setimmediate` library.
 
- exports.setImmediate = (typeof self !== "undefined" && self.setImmediate) ||
 
-                        (typeof global !== "undefined" && global.setImmediate) ||
 
-                        (this && this.setImmediate);
 
- exports.clearImmediate = (typeof self !== "undefined" && self.clearImmediate) ||
 
-                          (typeof global !== "undefined" && global.clearImmediate) ||
 
-                          (this && this.clearImmediate);
 
 
  |