var Metrics = {};

if(typeof(manualMetricsPName) == "undefined") {
	var manualMetricsPName = '';
}
if(typeof(manualToolDesc) == "undefined") {
	var manualToolDesc = '';
}
if(typeof(jsPlanPrice) == "undefined") {
	var jsPlanPrice = '';
}
if(typeof(jsUpsellPlanPrice) == "undefined") {
	var jsUpsellPlanPrice = '';
}

Metrics.Constants = {
	'GENERIC_CLASSFLAG': 'omniture',
	'MODAL_BUTTON_CLASSFLAG': 'modal-btn',
	'LISTENER_CLASSFLAG': 'omniture-listening',
	'MODAL_PAGEVIEW_KEYFLAG': 'PAGEVIEW',
	'COMMON_PROPS':'events,hier1,channel,prop4,eVar4,prop6,eVar6,prop11,eVar11,prop14,eVar14,prop15,eVar15,prop5,products',
	'EVENTS':'event1,event4,event5,event13,event14,event43,scOpen,scAdd,prodView',
	'PROPS_DOWNLOADS':'eVar27,eVar31,prop31,eVar48,prop48,eVar49,prop49'
};

Metrics.Maps = {
      
	// Include trailing slash for non-function entries only
      'DISCOVERY_MAP': {
			'www.customersaskford.com/': 'ford-ask',
			
			'www.ford.com': function(url) {
				if (url.match(/owner-services\/parts/)) {
					return 'ford-parts';
				} else if (url.match(/owner-services\/customer-support/)) {
					return 'ford-faq';
				} else if (url.match(/vehicles\/vehicle-showroom/)) {
					return 'ford-showroom';
				}
				
				return 'ford-home';
			},
			
			'secure.ford.com': function(url) {
				if (url.match(/footer\/contact-ford\/contact-us-email/)) {
					return 'ford-email';
				}
				return false;
			},
			'www.fordaccessoriesstore.com': function(url) {
				if (url.match(/GfaWeb\/home.do/)) {
					return 'gfa-home';
				} else if (url.match(/GfaWeb\/catalog.do/)) {
					return 'gfa-catalog';
				} 
				return 'fmcc-fas';
			},
			
			'www.fordcollection.com/': 'fordcollection-home',
			
			'www.fordcredit.com': function(url) {
				if (url.match(/buy\/insurance\.jhtml/)) {
					return 'fmcc-veh-ins';
				} else if (url.match(/legal/)) {
					return 'fmcc-privacy';
				}
				return 'fmcc-home';
			},
			'fordcredit.com/legal/privacy.jhtml': 'fmcc-privacy',

			'www.fordcustomaccessories.com/GfaWeb/accessorizer.do': 'gfa-accessorizer',
			
			'www.thefordstory.com': function(url) {
				if (url.match(/quality\/$/)) {
					return 'drive-quality';
				} else if (url.match(/green\/$/)) {
					return 'drive-green';
				} else if (url.match(/safe\/$/)) {
					return 'drive-safe';
				} else if (url.match(/smart\/$/)) {
					return 'drive-smart';
				}
				return false;
			},
			
			'www.fordvehicles.com': function(url) {
				if (url.match(/forddriveone\/$/)) {
					return 'drive-one';
				} else if (url.match(/incentives\//)) {
					return 'fv-incentives';
				} 
				return 'fv-home';
			},
						
			'genuineservice.com': function(url) {
				if (url.match(/genuineservice\/en/)) {
					return 'gens';
				}
				return false;
			},
			
			'www.lincoln.com/': 'ln-home',
			'www.lincoln.com/shoptools/special_offers.asp': 'ln-incentives',
			'www.mercuryvehicles.com/': 'mc-home',
			'www.mercuryvehicles.com/shoptools/special_offers.asp': 'mc-incentives',
			
			'motorcraft.com': function(url) {
				if (url.match(/catalog\.do.*/)) {
					return 'moto-parts';
				}
				return 'moto-home';
			},
			
            'motorcraftservice.com': function(url) {
                  if (url.match(/\/[^\/]*6d[^\/]*\.pdf$/)) {
                        return 'flmo-dl-6d';
                  } else if (url.match(/\/[^\/]*ad[^\/]*\.pdf$/)) {
                        return 'flmo-dl-ad';
                  } else if (url.match(/\/[^\/]*ca[^\/]*\.pdf$/)) {
                        return 'flmo-dl-ca';
                  } else if (url.match(/\/[^\/]*cr[^\/]*\.pdf$/)) {
                        return 'flmo-dl-cr';
                  } else if (url.match(/\/[^\/]*cv[^\/]*\.pdf$/)) {
                        return 'flmo-dl-cv';
                  } else if (url.match(/\/[^\/]*es[^\/]*\.pdf$/)) {
                        return 'flmo-dl-es';
                  } else if (url.match(/\/[^\/]*fw[^\/]*\.pdf$/)) {
                        return 'flmo-dl-fw';
                  } else if (url.match(/\/[^\/]*hc[^\/]*\.pdf$/)) {
                        return 'flmo-dl-hc';
                  } else if (url.match(/\/[^\/]*mg[^\/]*\.pdf$/)) {
                        return 'flmo-dl-mg';
                  } else if (url.match(/\/[^\/]*og[^\/]*\.pdf$/)) {
                        return 'flmo-dl-og';
                  } else if (url.match(/\/[^\/]*qg[^\/]*\.pdf$/)) {
                        return 'flmo-dl-qg';
                  } else if (url.match(/\/[^\/]*qn[^\/]*\.pdf$/)) {
                        return 'flmo-dl-qn';
                  } else if (url.match(/\/[^\/]*qs[^\/]*\.pdf$/)) {
                        return 'flmo-dl-qs';
				  } else if (url.match(/\/[^\/]*ra[^\/]*\.pdf$/)) {
                        return 'flmo-dl-ra';
                  } else if (url.match(/\/[^\/]*sc[^\/]*\.pdf$/)) {
                        return 'flmo-dl-sc';
                  } else if (url.match(/\/[^\/]*sn[^\/]*\.pdf$/)) {
                        return 'flmo-dl-sn';
                  } else if (url.match(/\/[^\/]*so[^\/]*\.pdf$/)) {
                        return 'flmo-dl-so';
                  } else if (url.match(/\/[^\/]*sp[^\/]*\.pdf$/)) {
                        return 'flmo-dl-sp';
                  } else if (url.match(/\/[^\/]*ss[^\/]*\.pdf$/)) {
                        return 'flmo-dl-ss';
                  } else if (url.match(/\/[^\/]*su[^\/]*\.pdf$/)) {
                        return 'flmo-dl-su';
                  } else if (url.match(/\/[^\/]*sv[^\/]*\.pdf$/)) {
                        return 'flmo-dl-sv';
                  } else if (url.match(/\/[^\/]*sy[^\/]*\.pdf$/)) {
                        return 'flmo-dl-sy';
                  } else if (url.match(/\/[^\/]*tw[^\/]*\.pdf$/)) {
                        return 'flmo-dl-tw';
                  } else if (url.match(/\/[^\/]*wa[^\/]*\.pdf$/)) {
                        return 'flmo-dl-wa';
                  }
	  
                  return false;
            },
			
			'www.onlinevehiclefinancing.com': function(url) {
				if (url.match(/aaui\?cFIndex=Y/)) {
					return 'fmcc-ovf';
				} else if(url.match(/aaui/)) {
					return 'fmcc-payment-est';
				}
				return false;
			},

			'owneradvantage.ford.com/': 'oa-home',
			'owneradvantage.ford.com/FindDealer.cfm': 'oa-dealer',
			
			'www.quicklane.com/home.do': 'qln-home',			
			
			'www.securedcontact.com': function(url) {
				return 'fmcc-email';
			},
			
			'www.syncmyride.com/': 'sync-home',	
			
			"javascript:showModal('esp-visit-intercept-module');":'esp-visit-intercept-module'
      },

      'KEY_MAP': {
            'drive-one'			: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: drive: one', 'prop6': 'drive: one', 'eVar6': 'drive: one',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'drive-quality'		: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: drive: quality', 'prop6': 'drive: quality', 'eVar6': 'drive: quality',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'drive-green'		: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: drive: green', 'prop6': 'drive: green', 'eVar6': 'drive: green',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'drive-safe'		: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: drive: safe', 'prop6': 'drive: safe', 'eVar6': 'drive: safe',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'drive-smart'		: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: drive: smart', 'prop6': 'drive: smart', 'eVar6': 'drive: smart',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },		
				
            'fmcc-email'		: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: fmcc: email', 'prop6': 'fmcc: email', 'eVar6': 'fmcc: email',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'fmcc-fas'			: { 'KEY': 'fmcc: fas', 		'PROPS': { 'prop5':'referral: fmcc: fas', 'prop6': 'fmcc: fas', 'eVar6': 'fmcc: fas',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'fmcc-home'			: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fmcc: home', 'prop6': 'fmcc: home', 'eVar6': 'fmcc: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'fmcc-link-acct'	: { 'KEY': 'exit: referral','PROPS': { 'prop5':'referral: fmcc: link account', 'prop6': 'fmcc: link account', 'eVar6': 'fmcc: link account', 
				'eVar48': 'fmcc account link', 'prop48': 'fmcc account link', 
				'events':'event4,event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS+',eVar48,prop48'} },
			'fmcc-ovf'			: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fmcc: ovf', 'prop6': 'fmcc: ovf', 'eVar6': 'fmcc: ovf', 
				'eVar48': 'fmcc app referral', 'prop48': 'fmcc app referral', 
				'events':'event4,event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS+',eVar48,prop48'} },
			'fmcc-payment-est'	: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fmcc: payment estimator', 'prop6': 'fmcc: payment estimator', 'eVar6': 'fmcc: payment estimator',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'fmcc-privacy'		: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fmcc: privacy', 'prop6': 'fmcc: privacy', 'eVar6': 'fmcc: privacy',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'fmcc-veh-ins'		: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fmcc: vehicle insurance', 'prop6': 'fmcc: vehicle insurance', 'eVar6': 'fmcc: vehicle insurance',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			
			'ford-ask'			: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: ford: ask', 'prop6': 'ford: ask', 'eVar6': 'ford: ask',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'ford-email'		: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: ford: email', 'prop6': 'ford: email', 'eVar6': 'ford: email',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },				
			'ford-home'			: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: ford: home', 'prop6': 'ford: home', 'eVar6': 'ford: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'ford-faq'			: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: ford: faq', 'prop6': 'ford: faq', 'eVar6': 'ford: faq',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'ford-parts'		: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: ford: parts', 'prop6': 'ford: parts', 'eVar6': 'ford: parts',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'ford-showroom'		: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: ford: showroom', 'prop6': 'ford: showroom', 'eVar6': 'ford: showroom',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'fordcollection-home': { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: fordcollection: home', 'prop6': 'fordcollection: home', 'eVar6': 'fordcollection: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },			
			
			'fv-home'			: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: fv: home', 'prop6': 'fv: home', 'eVar6': 'fv: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'fv-incentives'		: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: fv: incentives', 'prop6': 'fv: incentives', 'eVar6': 'fv: incentives',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			
			'gens'				: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: gens: service article', 'prop6': 'gens: service article', 'eVar6': 'gens: service article',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
				
            'gfa-accessorizer'	: { 'KEY': 'exit: referral', 'PROPS': { 'prop5':'referral: gfa: accessorizer', 'prop6': 'gfa: accessorizer', 'eVar6': 'gfa: accessorizer',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'gfa-catalog'		: { 'KEY': 'gfa: catalog', 		'PROPS': {} },
            'gfa-home'			: { 'KEY': 'exit: referral', 	'PROPS': { 'prop5':'referral: gfa: home', 'prop6': 'gfa: home', 'eVar6': 'gfa: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			
			'ln-home'			: { 'KEY': 'exit: referral', 			'PROPS': { 'prop5':'referral: ln: home', 'prop6': 'ln: home', 'eVar6': 'ln: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'ln-incentives'		: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: ln: incentives', 'prop6': 'ln: incentives', 'eVar6': 'ln: incentives',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },				
			
			'mc-home'			: { 'KEY': 'exit: referral', 			'PROPS': { 'prop5':'referral: mc: home', 'prop6': 'mc: home', 'eVar6': 'mc: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'mc-incentives'		: { 'KEY': 'exit: referral',	'PROPS': { 'prop5':'referral: mc: incentives', 'prop6': 'mc: incentives', 'eVar6': 'mc: incentives',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },				
			
            'moto-home'			: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: moto: home', 'prop6': 'moto: home', 'eVar6': 'moto: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            'moto-parts'		: { 'KEY': 'exit: referral', 'PROPS': { 'prop5':'referral: moto: parts lookup', 'prop6': 'moto: parts lookup', 'eVar6': 'moto: parts lookup',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
            
            'sync-home'			: { 'KEY': 'exit: referral', 		'PROPS': { 'prop5':'referral: sync: home', 'prop6': 'sync: home', 'eVar6': 'sync: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },

            'flmo-dl-6d'		: { 'KEY': 'flmo: download: diesel supplement', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'diesel supplement', 'prop49':'diesel supplement',
					'prop5': 'flmo: download: diesel supplement',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-cr'		: { 'KEY': 'flmo: download: safety advice card', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'safety advice card', 'prop49':'safety advice card',
					'prop5': 'flmo: download: safety advice card',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-cv'		: { 'KEY': 'flmo: download: warranty guide cover', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'warranty guide cover', 'prop49':'warranty guide cover',
					'prop5': 'flmo: download: warranty guide cover',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-es'		: { 'KEY': 'flmo: download: entertainment guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'entertainment guide', 'prop49':'entertainment guide',
					'prop5': 'flmo: download: entertainment guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-fw'		: { 'KEY': 'flmo: download: four wheeling guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'four wheeling guide', 'prop49':'four wheeling guide',
					'prop5': 'flmo: download: four wheeling guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-mg'		: { 'KEY': 'flmo: download: maintenance guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'maintenance guide', 'prop49':'maintenance guide',
					'prop5': 'flmo: download: maintenance guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-og'		: { 'KEY': 'flmo: download: owner guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'owner guide', 'prop49':'owner guide',
					'prop5': 'flmo: download: owner guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-qg'		: { 'KEY': 'flmo: download: quick reference guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'quick reference guide', 'prop49':'quick reference guide',
					'prop5': 'flmo: download: quick reference guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-qn'		: { 'KEY': 'flmo: download: navigation quick guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'navigation quick guide', 'prop49':'navigation quick guide',
					'prop5': 'flmo: download: navigation quick guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-qs'		: { 'KEY': 'flmo: download: quick reference safety guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'quick reference safety guide', 'prop49':'quick reference safety guide',
					'prop5': 'flmo: download: quick reference safety guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-ra'		: { 'KEY': 'flmo: download: roadside assistance card', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'roadside assistance card', 'prop49':'roadside assistance card',
					'prop5': 'flmo: download: roadside assistance card',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-sc'		: { 'KEY': 'flmo: download: safety guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'safety guide', 'prop49':'safety guide',
					'prop5': 'flmo: download: safety guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-sn'		: { 'KEY': 'flmo: download: navigation guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'navigation guide', 'prop49':'navigation guide',
					'prop5': 'flmo: download: navigation guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-ss'		: { 'KEY': 'flmo: download: special service package supplement', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'special service package supplement', 'prop49':'special service package supplement',
					'prop5': 'flmo: download: special service package supplement',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-so'		: { 'KEY': 'flmo: download: special off-road package supplement', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'special off-road package supplement', 'prop49':'special off-road package supplement',
					'prop5': 'flmo: download: special off-road package supplement',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-sy'		: { 'KEY': 'flmo: download: sync supplement', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'sync supplement', 'prop49':'sync supplement',
					'prop5': 'flmo: download: sync supplement',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'flmo-dl-wa'		: { 'KEY': 'flmo: download: warranty guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'warranty guide', 'prop49':'warranty guide',
					'prop5': 'flmo: download: warranty guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'flmo-dl-tw'		: { 'KEY': 'flmo: download: tire warranty guide', 'PROPS': 
				{	'eVar48':'download', 'prop48':'download', 'eVar49':'tire warranty guide', 'prop49':'tire warranty guide',
					'prop5': 'flmo: download: tire warranty guide',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			
			'oa-home'			: { 'KEY': 'exit: referral','PROPS': { 'prop5':'referral: oa: home', 'prop6': 'oa: home', 'eVar6': 'oa: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			'oa-dealer'			: { 'KEY': 'exit: referral','PROPS': { 'prop5':'referral: oa: find dealer', 'prop6': 'oa: find dealer', 'eVar6': 'oa: find dealer',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			
			'qln-home'			: { 'KEY': 'exit: referral', 			'PROPS': { 'prop5':'referral: qln: home', 'prop6': 'qln: home', 'eVar6': 'qln: home',
				'events':'event4', 'linkTrackEvents':Metrics.Constants.EVENTS, 'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
			
			// START GENERICS
			
			// Owner/Common/Pagelet/EditDealerInfo
            'omniture-ges'			: { 'KEY': 'exit: referral', 'PROPS': 
				{	'prop5':'referral: ges: online appointment', 'prop6': 'ges: online appointment', 'eVar6': 'ges: online appointment',
					'eVar48':'schedule appointment', 'prop48':'schedule appointment',
					'events':'event4,event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
            'omniture-dealer-map'	: { 'KEY': 'flmo: dealer: map', 'PROPS': { 'prop5':'flmo: dealer: map', 'linkTrackVars':Metrics.Constants.COMMON_PROPS+'prop5'} },
            'omniture-dealer-directions': { 'KEY': 'flmo: dealer: directions', 'PROPS': { 'prop5':'flmo: dealer: directions', 'linkTrackVars':Metrics.Constants.COMMON_PROPS+'prop5'} },
			
			// Owner/ServAndMaint/LocateADealerResults
			'service-schedule'		: { 'KEY': 'null', 'PROPS': {} },
			
			
			// Owner/FmcArticle/rArticleDetail; manualToolDesc = article category
			'article-print' 		: { 'KEY': 'flmo: advice: article: print', 'PROPS': 
				{	'eVar48':'article print', 'prop48':'article print', 'eVar49':manualToolDesc, 'prop49':manualToolDesc,
					'prop5': 'flmo: advice: article: print: '+manualToolDesc,
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			
			// Owner/FmcArticle/rArticleDetail; manualToolDesc = coupon ID
			'coupon-print' 			: { 'KEY': 'flmo: coupon: print', 'PROPS': 
				{	'eVar48':'coupon print', 'prop48':'coupon print', 'eVar49':manualToolDesc, 'prop49':manualToolDesc,
					'prop5': 'flmo: coupon: print',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },			

			// Owner/Common/Pagelet/EditPerInfo
			'profile-edit-complete'	: { 'KEY': 'flmo: profile: edit: complete', 'PROPS': 
				{	'events':'','linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },
					
			// Owner/Registration/AddVehicle
			'vehicle-added'			: { 'KEY': 'flmo: vehicle: added', 'PROPS': 
				{	'eVar27':'', 'eVar31':'owner:flm-owner', 'prop31':'owner:flm-owner',
					'eVar48':'vehicle', 'prop48':'vehicle', 'eVar49':'add vehicle', 'prop49':'add vehicle',
					'prop5': 'flmo: vehicle added',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
					
			'vehicle-imported'		: { 'KEY': 'flmo: vehicle imported', 'PROPS': 
				{	'eVar48':'vehicle', 'prop48':'vehicle', 'eVar49':'import vehicle', 'prop49':'import vehicle',
					'prop5': 'flmo: vehicle imported',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },					
			
			// Owner/NextVehicle/Article
			'vehicle-buying-print' 	: { 'KEY': 'flmo: vehicle: buying: article: print', 'PROPS': 
				{	'eVar48':'article print', 'prop48':'article print', 'eVar49':'buying', 'prop49':'buying',
					'prop5': 'flmo: vehicle: buying: article: print',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'vehicle-buying-checklist-print' 	: { 'KEY': 'flmo: vehicle: checklist: print', 'PROPS': 
				{	'eVar48':'checklist print', 'prop48':'checklist print', 'eVar49':'buying', 'prop49':'buying',
					'prop5': 'flmo: vehicle: checklist: print',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },					
			'vehicle-selling-print' : { 'KEY': 'flmo: vehicle: selling: article: print', 'PROPS': 
				{	'eVar48':'article print', 'prop48':'article print', 'eVar49':'selling', 'prop49':'selling',
					'prop5': 'flmo: vehicle: selling: article: print',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },

			// Modals; manualMetricsPName = esp plan
            'esp-visit-intercept-module'			: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'esp-visit-intercept-module', 
				'PROPS': { 'pageName':'flmo: warranty: esp: exit popup', 'prop11':'flmo: warranty: esp: exit popup', 'eVar11':'flmo: warranty: esp: exit popup', 'eVar21': '', 'eVar31': '', 'prop31': '', 'eVar48': '', 'prop48': '', 'eVar49': '', 'prop49': '', 
					'events':'', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },	
			'esp-visit-intercept-module-buy'		: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'esp-visit-intercept-module', 
				'PROPS': { 'pageName':'flmo: warranty: esp: exit popup', 'prop11':'flmo: warranty: esp: exit popup', 'eVar11':'flmo: warranty: esp: exit popup', 'eVar21': '', 'eVar31': '', 'prop31': '', 'eVar48': '', 'prop48': '', 'eVar49': '', 'prop49': '', 
					'events':'', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },			
            'esp-visit-intercept-module-buy-current': { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: recommended'+manualMetricsPName, 'prop6': 'esp: buy'+manualMetricsPName, 'eVar6': 'esp: buy'+manualMetricsPName,
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':manualMetricsPName.substring(2), 'prop49':manualMetricsPName.substring(2),
					'products':'esp;'+manualMetricsPName.substring(2)+';1;'+jsPlanPrice,
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },	
			'esp-visit-intercept-module-buy-upsell'	: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: additional'+manualMetricsPName, 'prop6': 'esp: buy'+manualMetricsPName, 'eVar6': 'esp: buy'+manualMetricsPName,
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':manualMetricsPName.substring(2), 'prop49':manualMetricsPName.substring(2),
					'products':'esp;'+manualMetricsPName.substring(2)+';1;'+jsUpsellPlanPrice,
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },	
			'esp-visit-intercept-module-continue'	: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy'+manualMetricsPName, 'prop6': 'esp: buy'+manualMetricsPName, 'eVar6': 'esp: buy'+manualMetricsPName,
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':manualMetricsPName.substring(2), 'prop49':manualMetricsPName.substring(2),
					'products':'esp;'+manualMetricsPName.substring(2)+';1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'evi-module-continue-premiumcare'		: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: premiumcare', 'prop6': 'esp: buy: premiumcare', 'eVar6': 'esp: buy: premiumcare',
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':'premiumcare', 'prop49':'premiumcare',
					'products':'esp;premiumcare;1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },		
			'evi-module-continue-extracare'			: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: extracare', 'prop6': 'esp: buy: extracare', 'eVar6': 'esp: buy: extracare',
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':'extracare', 'prop49':'extracare',
					'products':'esp;extracare;1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },	
			'evi-module-continue-basecare'			: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: basecare', 'prop6': 'esp: buy: basecare', 'eVar6': 'esp: buy: basecare',
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':'basecare', 'prop49':'basecare',
					'products':'esp;basecare;1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },	
			'evi-module-continue-powertraincare'	: { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: powertraincare', 'prop6': 'esp: buy: powertraincare', 'eVar6': 'esp: buy: powertraincare',
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':'powertraincare', 'prop49':'powertraincare',
					'products':'esp;powertraincare;1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },						
			'esp-visit-intercept-module-quote'		: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'esp-visit-intercept-module', 
				'PROPS': { 'pageName':'flmo: warranty: esp: prem maint plan: get quote popup', 'prop11':'flmo: warranty: esp: prem maint plan: get quote popup', 'eVar11':'flmo: warranty: esp: prem maint plan: get quote popup', 
					'events':'', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },	
			'esp-visit-intercept-module-quote-continue': { 'KEY': 'exit: referral', 
				'PROPS': { 'prop5':'referral: esp: buy: premium maintenance plan', 'prop6': 'esp: buy: premium maintenance plan', 'eVar6': 'esp: buy: premium maintenance plan',
					'eVar48':'esp purchase', 'prop48':'esp purchase', 'eVar49':'premium maintenance', 'prop49':'premium maintenance',
					'products':'esp;premium maintenance;1;',
					'events':'event4,event43,scOpen,scAdd', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'vehiclePaymentMethod'					: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'uneligible-module', 
				'PROPS': { 'pageName':'flmo: warranty: esp: wizard: 1a: prem maint plan', 'prop11':'flmo: warranty: esp: wizard: 1a: prem maint plan', 'eVar11':'flmo: warranty: esp: wizard: 1a: prem maint plan', 
					'events':'', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },						
					
			'service-delete-module'			: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'vehicle-delete-module', 
				'PROPS': { 'pageName':'flmo: profile: service history: delete confirm: '+s.eVar16, 
					'prop11':'flmo: profile: service history: delete confirm', 'eVar11':'flmo: profile: service history: delete confirm', 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },	
			'service-deleted'				: { 'KEY': 'flmo: service history: delete', 
				'PROPS': { 'prop5':'flmo: service history: delete',
					'eVar48':'vehicle', 'prop48':'vehicle', 'eVar49':'delete service history', 'prop49':'delete service history',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
					
			'service-added'					: { 'KEY': 'flmo: service history: add', 
				'PROPS': { 'prop5':'flmo: service history: add',
					'eVar48':'vehicle', 'prop48':'vehicle', 'eVar49':'add service history', 'prop49':'add service history',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },

					
			'vehicle-delete-module-raise'	: { 'KEY': Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG, 'MODAL_ID': 'vehicle-delete-module', 
				'PROPS': { 'pageName':'flmo: profile: vehicles: detail: delete confirm: '+s.eVar16, 
					'prop11':'flmo: profile: vehicles: detail: delete confirm', 'eVar11':'flmo: profile: vehicles: detail: delete confirm', 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS} },	
			'vehicle-deleted'				: { 'KEY': 'flmo: vehicle deleted', 
				'PROPS': { 'prop5':'flmo: vehicle deleted',
					'eVar48':'vehicle', 'prop48':'vehicle', 'eVar49':'delete vehicle', 'prop49':'delete vehicle',
					'events':'event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
					
			//ebill		
			'ebill-enroll-print'			: { 'KEY': 'flmo: ebill: enroll: print', 
				'PROPS': { 'prop5':'flmo: ebill: enroll: print',
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },
			'ebill-enroll-continue'			: { 'KEY': 'exit: referral', 
				'PROPS': { 'hier1':'owners:flm owner:credit:ebill', 'prop5':'referral: fmcc: ebill', 'prop6': 'fmcc: ebill', 'eVar6': 'fmcc: ebill',
					'eVar48':'ebill login referral', 'prop48':'ebill login referral',
					'events':'event4,event43', 'linkTrackEvents':Metrics.Constants.EVENTS, 
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} },		
			'ebill-cancel-print'			: { 'KEY': 'flmo: ebill: cancel: print', 
				'PROPS': { 'prop5':'flmo: ebill: cancel: print',
					'linkTrackVars':Metrics.Constants.COMMON_PROPS+','+Metrics.Constants.PROPS_DOWNLOADS} }		
					
					
      }
};

Metrics.Manager = {
      'init': function() {
            YAHOO.util.Dom.getElementsBy(
				function(el) { 
					if (YAHOO.util.Dom.hasClass(el, Metrics.Constants.LISTENER_CLASSFLAG) 
					|| YAHOO.util.Dom.hasClass(el, Metrics.Constants.MODAL_BUTTON_CLASSFLAG)) 
						return false; 
					if (YAHOO.util.Dom.hasClass(el, Metrics.Constants.GENERIC_CLASSFLAG)) return true; 
					if (el.href) return true; 
					
					return false; 
				}, "A", null, Metrics.Manager.doDiscovery);
      },


      'doDiscovery': function(el) {
            var isCandidate = false;

            if (YAHOO.util.Dom.hasClass(el, Metrics.Constants.GENERIC_CLASSFLAG) && el.name && (el.name in Metrics.Maps.KEY_MAP)) {
                  // first check for flag class
                  isCandidate = true;
            } else if (el.href) {
                  // then check if href target (without protocol) is a key in the discovery map
                  var url = el.href.replace(/^https?:\/\//i, '');

				  // exit further processing if it's an internal URL
                  // ###UNCOMMENT NEXT LINE TO PREVENT PROCESSING INTERNAL URLS
                  //if (url.toLowerCase().indexOf(location.host.toLowerCase()) == 0) return;

                  if (url in Metrics.Maps.DISCOVERY_MAP) {
                        isCandidate = true;
                  } else {
                        // then check if it's a wild-carded domain entry
						url = url.replace(/\/.*$/, '');
                        
                        if ((url in Metrics.Maps.DISCOVERY_MAP) && (typeof Metrics.Maps.DISCOVERY_MAP[url] == "function")) {
                            // only only wild-carding when there's a function to do further tests
                            isCandidate = true;
                        }

				if (!isCandidate) {
					url = url.replace(/^[^\.]+\./, '');

                       		if ((url in Metrics.Maps.DISCOVERY_MAP) && (typeof Metrics.Maps.DISCOVERY_MAP[url] == "function")) {
                            		// only only wild-carding when there's a function to do further tests
                            		isCandidate = true;
                        	}
				}
                  }

                  if (isCandidate) {
                        if (typeof Metrics.Maps.DISCOVERY_MAP[url] == "function") {
                            var key = Metrics.Maps.DISCOVERY_MAP[url](el.href);
							
							if (key) {
								el.name = key;
							} else {
								isCandidate = false;
							}
                        } else {
                              el.name = Metrics.Maps.DISCOVERY_MAP[url];
                        }
                  }
            }

            if (isCandidate) {
                YAHOO.util.Event.addListener(el, "click", Metrics.Manager.boundOnClick, null, el);
            }
      },
      
      'boundOnClick': function(p_oEvent, args) {
            // function is bound to element
            var key = Metrics.Maps.KEY_MAP[this.name];

            if (YAHOO.lang.isObject(args)) {
				// if args is passed in then use that for our local s
				var _s = YAHOO.lang.merge(args, key.PROPS);
				_s.tl(this, 'o', key.KEY);
            } else if (key.KEY == Metrics.Constants.MODAL_PAGEVIEW_KEYFLAG) {
                  // if this is a modal pageview then instantiate a new s
                  var _s = YAHOO.lang.merge(s_gi(s_account), key.PROPS);

                  // set up listeners as needed
                  var buttons = YAHOO.util.Dom.getElementsByClassName(Metrics.Constants.MODAL_BUTTON_CLASSFLAG, 'A', key.MODAL_ID);
                  for (var i = 0; i < buttons.length; i ++) {
                    if ((buttons[i].name in Metrics.Maps.KEY_MAP) 
					&& !YAHOO.util.Dom.hasClass(buttons[i], Metrics.Constants.LISTENER_CLASSFLAG)) {
						YAHOO.util.Event.addListener(buttons[i], "click", Metrics.Manager.boundOnClick, _s, buttons[i]);
						YAHOO.util.Dom.addClass(buttons[i], Metrics.Constants.LISTENER_CLASSFLAG);
					}
                  }

                  // then fire off page view 
                  _s.t();
            } else {
				
				// create local s off of global-scope s
				var _s = YAHOO.lang.merge(s, key.PROPS);
				_s.tl(this, 'o', key.KEY);
            }
      },

	  
	  'handlePageView': function(props) {
		// props will be { sProp5: blah, eVar5: blech }
		var _s = YAHOO.lang.merge(s_gi(s_account), props);
		
	  }
};

YAHOO.util.Event.onDOMReady(Metrics.Manager.init);
