code: function execute(item, next) {
        if ('function' !== typeof item.fn) item.fn = model[item.fn];
        return item.fn.call(model, model.get(item.value), function (error, value) {
          if (error) return next(error);
  
          //
          // Only store the value if it is returned directly from the hook.
          //
          if (value) model.set(item.value, value);
          next();
        });
      }
docs: Iterator to execute items on the stack (a)synchronously. Check if a
  function was provided directly to the hook or if it has a reference
  to a function property on the model itself. Returning a value will
  store the property on the model automatically.
  
  @param {Object} item properties, e.g. function to call and attribute key
  @param {Function} next callback
  @returns {Mixed}
  @api private