function accumulator1( x ) {
		if ( arguments.length === 0 ) {
			if ( N === 0 ) {
				return null;
			}
			if ( N === 1 ) {
				return ( isnan( M2 ) ) ? NaN : 0.0;
			}
			return M2 / (N-1);
		}
		N += 1;
		delta = x - mu;
		mu += delta / N;
		M2 += delta * ( x - mu );
		if ( N < 2 ) {
			return ( isnan( M2 ) ) ? NaN : 0.0;
		}
		return M2 / (N-1);
	}
If provided a value, the accumulator function returns an updated unbiased sample variance. If not provided a value, the accumulator function returns the current unbiased sample variance.

@private
@param {number} [x] - new value
@returns {(number|null)} unbiased sample variance or null