function timeoutPromise(oPromise, iTimeout) {
		iTimeout = iTimeout === undefined ? 0 : iTimeout;
		oPromise = oPromise ? oPromise : Promise.resolve();
		return oPromise.then(function() {
			return new Promise(function(fnResolve, fnReject) {
				setTimeout(fnResolve, 0);
			});
		});
	}
/**
	 * Returns a promise that resolves AFTER a setTimeout()
	 */
Returns a promise that resolves AFTER a setTimeout()
Returns a promise that resolves AFTER a setTimeout ()
function timeoutPromise(oPromise, iTimeout) {
		iTimeout = iTimeout === undefined ? 0 : iTimeout;
		oPromise = oPromise ? oPromise : Promise.resolve();
		return oPromise.then(function() {
			return new Promise(function(fnResolve, fnReject) {
				setTimeout(fnResolve, 0);
			});
		});
	}
function timeoutPromise ( oPromise , iTimeout ) { iTimeout = iTimeout === undefined ? 0 : iTimeout ; oPromise = oPromise ? oPromise : Promise . resolve ( ) ; return oPromise . then ( function ( ) { return new Promise ( function ( fnResolve , fnReject ) { setTimeout ( fnResolve , 0 ) ; } ) ; } ) ; }
Returns a promise that resolves AFTER a setTimeout()
Returns a promise that resolves AFTER a setTimeout ()