function indexed( x, indices, mode, out, stride, offset ) {
	var getIndex;
	var max;
	var io;
	var i;
	var j;

	// Resolve a function for returning an index according to the specified index mode:
	getIndex = ind( mode );

	// Resolve the maximum index:
	max = x.length - 1;

	// Extract each desired element from the provided array...
	io = offset;
	for ( i = 0; i < indices.length; i++ ) {
		j = getIndex( indices[ i ], max );
		out[ io ] = x[ j ];
		io += stride;
	}
	return out;
}
Takes elements from an indexed array and assigns the values to elements in an indexed output array.

@private
@param {Collection} x - input array
@param {IntegerArray} indices - list of indices
@param {string} mode - index mode
@param {Collection} out - output array
@param {integer} stride - output array stride
@param {NonNegativeInteger} offset - output array offset
@returns {Collection} output array

@example
var x = [ 1, 2, 3, 4 ];
var indices = [ 3, 1, 2, 0 ];

var out = [ 0, 0, 0, 0 ];

var arr = indexed( x, indices, 'throw', out, 1, 0 );
// returns [ 4, 2, 3, 1 ]