function wrap (fn) {
  return function () {
    try {
      return fn.apply(this, arguments)
    } catch (error) {
      error.message = [error.message, stringify(arguments)].join(': ')
      throw error
    }
  }
}
/**
 * Wrap a filter function to add arguments to error messages
 * @param {Function} fn
 * @returns {Function}
 */
Wrap a filter function to add arguments to error messages
@param {Function} fn
@returns {Function}
Wrap a filter function to add arguments to error messages @param { Function } fn @returns { Function }
function wrap (fn) {
  return function () {
    try {
      return fn.apply(this, arguments)
    } catch (error) {
      error.message = [error.message, stringify(arguments)].join(': ')
      throw error
    }
  }
}
function wrap ( fn ) { return function ( ) { try { return fn . apply ( this , arguments ) } catch ( error ) { error . message = [ error . message , stringify ( arguments ) ] . join ( ': ' ) throw error } } }
Wrap a filter function to add arguments to error messages
 @param {Function} fn
 @returns {Function}
Wrap a filter function to add arguments to error messages @param { Function } fn @returns { Function }