| if performance? and performance.now | 
|   module.exports = -> performance.now() | 
| else if process? and process.hrtime | 
|   module.exports = -> (getNanoSeconds() - nodeLoadTime) / 1e6 | 
|   hrtime = process.hrtime | 
|   getNanoSeconds = -> | 
|     hr = hrtime() | 
|     hr[0] * 1e9 + hr[1] | 
|   moduleLoadTime = getNanoSeconds() | 
|   upTime = process.uptime() * 1e9 | 
|   nodeLoadTime = moduleLoadTime - upTime | 
| else if Date.now | 
|   module.exports = -> Date.now() - loadTime | 
|   loadTime = Date.now() | 
| else | 
|   module.exports = -> new Date().getTime() - loadTime | 
|   loadTime = new Date().getTime() |