function assign( x, n, out, stride, offset, predicate, thisArg ) {
	var xo;
	var oo;

	xo = arraylike2object( x );
	oo = arraylike2object( out );
	if ( xo.accessorProtocol || oo.accessorProtocol ) {
		accessors( xo, n, oo, stride, offset, predicate, thisArg );
		return out;
	}
	indexed( x, n, out, stride, offset, predicate, thisArg );
	return out;
}
Cumulatively tests whether at least `n` array elements in a provided array pass a test implemented by a predicate function and assigns the results to elements in the provided output array.

@param {Collection} x - input array
@param {integer} n - number of elements
@param {Collection} out - output array
@param {integer} stride - output array stride
@param {NonNegativeInteger} offset - output array offset
@param {Function} predicate - test function
@param {*} [thisArg] - execution context
@returns {Collection} output array

@example
function isPositive( value ) {
    return ( value > 0 );
}

var x = [ false, false, false, true, true ];

var out = [ false, null, false, null, false, null, false, null, false, null ];
var arr = indexed( x, 2, out, 2, 0, isPositive );
// returns [ false, null,  false, null,  false, null, false, null, true, null ]

var bool = ( arr === out );
// returns true