code: function stringifyError(value) {
  	    var err = {
  	      // These properties are implemented as magical getters and don't show up in for in
  	      stack: value.stack,
  	      message: value.message,
  	      name: value.name
  	    };
  
  	    for (var i in value) {
  	      if (Object.prototype.hasOwnProperty.call(value, i)) {
  	        err[i] = value[i];
  	      }
  	    }
  
  	    return err;
  	  }
docs: https://github.com/ftlabs/js-abbreviate/blob/fa709e5f139e7770a71827b1893f22418097fbda/index.js#L95-L106