function getVariantIndexInURL(mPropertyBag) {
		var mReturnObject = {index: -1};
		var oModel = mPropertyBag.model;

		// if ushell container is not present an empty object is returned
		var oURLParsingService = oModel.getUShellService("URLParsing");
		var mURLParameters = oURLParsingService?.parseShellHash(hasher.getHash()).params;

		if (mURLParameters) {
			mReturnObject.parameters = [];
			// in UI Adaptation the URL parameters are empty
			// the current URL parameters are retrieved from the stored hash data
			if (oModel._bDesignTimeMode) {
				mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER] = URLHandler.getStoredHashParams(mPropertyBag);
			}

			if (Array.isArray(mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER])) {
				// Support legacy Urls where the parameter was present multiple times
				if (mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER].length > 1) {
					mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER] =
						mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER].map(decodeURIComponent);
				} else if (mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER].length === 1) {
					// New mode where the parameter is a comma separated list
					const sParam = mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER][0];
					const sParamDecoded = sParam && decodeURIComponent(sParam);
					mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER] = sParamDecoded ? sParamDecoded.split(",") : [];
				}

				mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER].some(function(sParamDecoded, iIndex) {
					if (!isEmptyObject(oModel.getVariant(sParamDecoded, mPropertyBag.vmReference))) {
						mReturnObject.index = iIndex;
						return true;
					}
					return false;
				});
			}
		}
		return merge(
			mReturnObject,
			mURLParameters
			&& mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER]
			&& {parameters: mURLParameters[VariantUtil.VARIANT_TECHNICAL_PARAMETER]}
		);
	}
Returns the index at which the passed variant management reference is present.

@param {object} mPropertyBag - Property bag
@param {string} mPropertyBag.vmReference - Variant management reference
@param {sap.ui.fl.variants.VariantModel} mPropertyBag.model - Variant management model

@returns {object} oParametersWithIndex - Return object
@returns {int} oParametersWithIndex.index - The index in the array of variant URL parameters
@returns {undefined | string[]} [oParametersWithIndex.parameters] - array of variant URL parameters or undefined when no shell is present

@private