function flatten( x, shape, colexicographic ) {
	var out = zeros( numel( shape ) );
	return assign( x, shape, colexicographic, out, 1, 0 );
}
Flattens an n-dimensional nested array.

## Notes

-   The function assumes that all nested arrays have the same length (i.e., the input array is **not** a ragged array).

@param {Array} x - input nested array
@param {NonNegativeIntegerArray} shape - array shape
@param {boolean} colexicographic - specifies whether to flatten array values in colexicographic order
@returns {Array} flattened array

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

var out = flatten( x, [ 2, 2 ], false );
// returns [ 1, 2, 3, 4 ]

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

var out = flatten( x, [ 2, 2 ], true );
// returns [ 1, 3, 2, 4 ]