function clbk( x, sx, ox, y, sy, oy, hasOptions, options ) {
	var out;
	var v1;
	var v2;

	out = {
		'arity': 0,
		'fcn': null
	};
	if ( hasOptions ) {
		if ( sx === 0 && sy === 0 ) {
			if ( isAccessorArray( x ) ) {
				v1 = x.get( ox );
			} else {
				v1 = x[ ox ];
			}
			if ( isAccessorArray( y ) ) {
				v2 = y.get( oy );
			} else {
				v2 = y[ oy ];
			}
			out.fcn = random.factory( v1, v2, options );
			return out;
		}
		out.fcn = random.factory( options );
	} else {
		out.fcn = random;
	}
	out.arity += 2;
	return out;
}
Returns a function for generating pseudorandom numbers.

## Notes

-   The returned object has the following properties:

    -   **arity**: number of function parameters.
    -   **fcn**: function for generating pseudorandom numbers.

@private
@param {Collection} x - first parameter
@param {integer} sx - `x` stride length
@param {NonNegativeInteger} ox - starting `x` index
@param {Collection} y - second parameter
@param {integer} sy - `y` stride length
@param {NonNegativeInteger} oy - starting `y` index
@param {boolean} hasOptions - boolean indicating whether to process an options argument
@param {(void|Options)} options - function options
@returns {Object} function object