function internal( x, predicate, thisArg ) {
	var out;
	var v;
	var i;

	out = [];
	for ( i = 0; i < x.length; i++ ) {
		v = x[ i ];
		if ( !predicate.call( thisArg, v, i, x ) ) {
			out.push( v );
		}
	}
	return out;
}
Returns a shallow copy of an array containing only those elements which fail a test implemented by a predicate function.

@private
@param {Collection} x - input array
@param {Function} predicate - test function
@param {*} thisArg - execution context
@returns {Array} output array

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

var x = [ 1, -2, -3, 4 ];

var out = internal( x, isPositive );
// returns [ -2, -3 ]