     mtLoginStatus = "|evar22=logged in";
            } else if (dataLayer.mr_prof_authentication_state == "remembered") {
                mtLoginStatus = "|evar22=remembered";
            }
            a = a + mtLoginStatus;
            /*check capitalization of event, eVar, prop*/
            var regexE = /event/i;
            var regexV = /evar/i;
            var regexP = /prop/i;
            var regexL = /link/i;
            tempArray = a.split("|");
            tempArray.forEach(function(value) {
                /*test which variable type*/
                var varType = "";
                if (/^event/i.test(value) == true) {
                    varType = "event";
                } else if (/^evar/i.test(value) == true) {
                    varType = "eVar";
                } else if (/^prop/i.test(value) == true) {
                    varType = "prop";
                } else if (/^list/i.test(value) == true) {
                    varType = "list";
                }
                switch (varType) {
                    case "event":
                        var eventVal = value.replace(regexE, "event");
                        events = s.apl(events, eventVal, ",", 2);
                        /*grab only the event name in case there is an incrementor also passed*/
                        var eventName = value.split("=");
                        linkTrackVars = s.apl(linkTrackVars, "events", ",", 2);
                        linkTrackEvents = s.apl(linkTrackEvents, eventName[0], ",", 2);
                        break;
                    case "eVar":
                        /*split the evar and value*/
                        var varName = value.split("=");
                        linkTrackVars = s.apl(linkTrackVars, varName[0].replace(regexV, "eVar"), ",", 2);
                        s[varName[0].replace(regexV, "eVar")] = varName[1];
                        variableArray.push(varName[0].replace(regexV, "eVar"));
                        break;
                    case "prop":
                        /*split the prop and value*/
                        var propName = value.split("=");
                        linkTrackVars = s.apl(linkTrackVars, propName[0].replace(regexP, "prop"), ",", 2);
                        s[propName[0].replace(regexP, "prop")] = propName[1];
                        variableArray.push(propName[0].replace(regexP, "prop"));
                        break;
                    case "list":
                        /*split the prop and value*/
                        var listName = value.replace("=", "@@").split("@@");
                        linkTrackVars = s.apl(linkTrackVars, listName[0].replace(regexL, "list"), ",", 2);
                        s[listName[0].replace(regexL, "list")] = listName[1].replace(/\^/g, "|");
                        variableArray.push(listName[0].replace(regexL, "list"));
                        break;
                    default:
                        // add nothing
                }
            });
        }
        if (typeof visitor !== "undefined") {
            s.marketingCloudVisitorID = visitor.getMarketingCloudVisitorID();
        }
        s.origLTV = s.linkTrackVars;
        s.origEvents = s.events;
        s.events = events;
        s.linkTrackVars = linkTrackVars;
        s.linkTrackEvents = linkTrackEvents;
        s.tl(this, "o", "Impression View");

        /*clear impression specific variables*/
        variableArray.forEach(function(value) {
            s[value] = "";
        });
        s.events = s.origEvents;
        s.linkTrackEvents = "None";
        s.linkTrackVars = s.origLTV;
    };

} else {}
}