docs: function(values, keys)
    {
      var valuesResolver = createPropertyResolver( values );
  
      if ( keys )
      {
        var keysResolver = createPropertyResolver( keys );
        var result = {};
  
        for (var i = 0; i < this.length; i++)
        {
          var model = this[ i ];
          var value = valuesResolver( model );
          var key = keysResolver( model );
  
          result[ key ] = value;
        }
  
        return result;
      }
      else
      {
        var result = [];
  
        for (var i = 0; i < this.length; i++)
        {
          var model = this[ i ];
          var value = valuesResolver( model );
  
          result.push( value );
        }
  
        return result;
      }
    }