if (!jQuery.noConflict()) {
	$.noConflict();
}
/* ===== CPTOOLTIP 1.0.1 ===== */
try{Utils.listFunctions(Utils)}catch(error){alert('In order to use the logging functionality the Utils object must be included: located in /js/libs/plugins.js\nIf you do not plan on utilizing the log functionality you should change all references to "log()" to either console.log() or alert().')}(function(a){jQuery.support.cors=true;var b={displayEvent:"hover",tipPosition:"top",verticalOffset:0,horizontalOffset:0,directionOffset:"left",useMidPoints:true,tipContent:"rel",sendDataToCallback:false,ajaxPreUrl:"",ajaxPostUrl:"",ajaxHandle:"href",ajaxLoadingData:"LOADING",ajaxCallback:"",silentQA:false,tipMaxWidth:"250px"};var c={$this:"",$curr:"",tipHTML:"",tipContent:"LOADING",ajaxContent:"",tipIsDisplayed:false,tipCount:0,init:function(e){log("---->CPTOOLTIP_CONTROLLER.init()");$this=a(this);d.getSettings("---->DEFAULT SETTINGS");if(e){a.extend(true,b,e);d.getSettings("---->MODIFIED SETTINGS",e)}c.defineAjax();c.qaTipOptions()},qaTipOptions:function(){log("---->methods.qaTipOptions()");try{var a=0,d="";if(b.displayEvent!=="hover"&&b.displayEvent!=="click"){a=a+1;d=d+'\n\nsettings.displayEvent can only be "hover" or "click" - current setting: '+b.displayEvent}if(b.tipPosition!=="top"&&b.tipPosition!=="bottom"&&b.tipPosition!=="left"&&b.tipPosition!=="right"){a=a+1;d=d+'\n\nsettings.tipPosition can only be "top", "bottom", "left" or "right" - current setting: '+b.tipPosition}if(isNaN(b.verticalOffset)===true){a=a+1;d=d+"\n\nsettings.verticalOffset must be a number. - current setting: "+b.verticalOffset}if(b.directionOffset!=="left"&&b.directionOffset!=="right"){a=a+1;d=d+'\n\nsettings.directionOffset can only be "left" or "right" = current setting: '+b.directionOffset}if(b.tipContent!=="rel"&&b.tipContent!=="alt"&&b.tipContent!=="ajax"){a=a+1;d=d+'\n\nsettings.tipContent can only be "rel", "alt" or "ajax" = current setting: '+b.tipContent}if(b.tipContent==="ajax"&&b.ajaxHandle===""){a=a+1;d=d+"\n\nsettings.ajaxHandle cannot be empty = current setting: "+b.ajaxHandle}if(b.sendDataToCallback==="true"&&b.sendDataToCallback===""){a=a+1;d=d+"\n\nsettings.sendDataToCallback cannot be empty = current setting: "+b.sendDataToCallback}if(a!==0){if(b.silentQA===true){log("<!>CPTOOLTIP SETUP ERRORS ("+a+")\n"+d);c.initDisplay()}else{alert("<!>CPTOOLTIP SETUP ERRORS ("+a+")\n"+d)}}else{c.initDisplay()}}catch(e){alert("<!>CPTOOLTIP ERROR - qaTipOptions Method: "+e)}},initDisplay:function(){log("---->methods.initDisplay()");try{var d;switch(b.displayEvent){case"hover":$this.hover(function(){log("over");if(c.tipCount===1){return false}else{c.tipCount=1;$curr=a(this);c.delayHover(c.setTipContent,250)}},function(){log("out");c.tipCount=0;c.checkTipHover();c.delayHover(c.initKillTooltip,25)});break;case"click":$this.live("click",function(b){log("clicked");$curr=a(this);c.setTipContent();return false});break;default:log('<!>CPTOOLTIP ERROR - settings.displayEvent switch passed bad value - setting settings.displayEvent to "hover"');b.displayEvent="hover";c.initDisplay()}}catch(e){log("<!>CPTOOLTIP ERROR - initDisplay Method: "+e)}},
setTipContent:function(){log("---->methods.setTipContent()");try{if(c.tipCount!==0){switch(b.tipContent){case"rel":c.tipContent=$curr.attr("rel");c.buildTooltip(c.tipContent);break;case"alt":c.tipContent=$curr.attr("alt");c.buildTooltip(c.tipContent);break;case"ajax":c.buildTooltip(b.ajaxLoadingData);var a=b.ajaxPreUrl+$curr.attr(b.ajaxHandle)+b.ajaxPostUrl;if(b.ajaxCallback!==""){c.doAjax(a,6e4,true,b.ajaxCallback)}else{c.doAjax(a,6e4,true)}$curr.ajaxComplete(function(){log(c.tipCount);if(c.tipCount!==0){log("ajaxComplete - methods.ajaxContent = "+c.ajaxContent);c.buildTooltip(c.ajaxContent)}});break;default:log('<!>CPTOOLTIP ERROR - settings.tipContent switch passed bad value - setting settings.tipContent to "rel"');b.tipContent="rel";c.setTipContent()}}}catch(d){log("<!>CPTOOLTIP ERROR - setTipContent Method: "+d)}},buildTooltip:function(d){log("---->methods.buildTooltip()");try{switch(b.tipPosition){case"top":c.tipHTML='<div id="CPTOOLTIP"><div class="cptooltip container"><div class="cptooltip content">'+d+'</div></div><div class="cptooltip pointer down"></div></div>';break;case"bottom":c.tipHTML='<div id="CPTOOLTIP"><div class="cptooltip pointer up"></div><div class="cptooltip container"><div class="cptooltip content">'+d+"</div></div></div>";break;case"left":c.tipHTML='<div id="CPTOOLTIP"><div class="cptooltip pointer left"></div><div class="cptooltip container left"><div class="cptooltip content">'+d+"</div></div></div>";break;case"right":c.tipHTML='<div id="CPTOOLTIP"><div class="cptooltip container right"><div class="cptooltip content">'+d+'</div></div><div class="cptooltip pointer right"></div></div>';break;default:log('tipPosition switch passed bad value - setting tipPosition to "bottom"');b.tipPosition="bottom";this.cptooltip("buildTooltip")}if(a("#CPTOOLTIP").size()!==0){log("methods.buildTooltip - RUNNING remove method");a("#CPTOOLTIP").remove()}a("body").append(c.tipHTML);c.positionTooltip()}catch(e){log("<!>CPTOOLTIP ERROR - buildTooltip Method: "+e)}},positionTooltip:function(){log("---->methods.positionTooltip()");try{a("#CPTOOLTIP").css("maxWidth",b.tipMaxWidth);var d=a("#CPTOOLTIP");tipHeight=d.outerHeight(),tipWidth=d.outerWidth(),baseLeft=parseInt(c.itemOffset($curr,"left")),baseTop=parseInt(c.itemOffset($curr,"top")),baseHeight=$curr.outerHeight(true),baseWidth=$curr.outerWidth(true),baseLeftPos=baseLeft+baseWidth/2,tipSetLeft=baseLeftPos-tipWidth/2,browserMidpoints=c.getBrowserDims("width",true);if(b.useMidPoints===true){b.horizontalOffset===0?b.horizontalOffset="30%":null;if(browserMidpoints[1]>=baseTop){log("Repositioning pointer to bottom");d.find(".pointer").remove();d.prepend('<div class="cptooltip pointer up"> </div>');b.tipPosition="bottom"}else{log("Repositioning pointer to top");d.find(".pointer").remove();d.append('<div class="cptooltip pointer down"> </div>');b.tipPosition="top"}browserMidpoints[0]>baseLeft?b.directionOffset="left":b.directionOffset="right"}var e=function(){switch(b.tipPosition){case"top":return baseTop-tipHeight;break;case"bottom":return baseTop+baseHeight;break;case"left":return baseTop+baseHeight/2-tipHeight/2;break;case"right":return baseTop+baseHeight/2-tipHeight/2;default:log("settings.tipPosition switch passed bad value")}};var f=function(){switch(b.tipPosition){case"top":return tipSetLeft;break;case"bottom":return tipSetLeft;break;case"left":return baseLeft+baseWidth;break;case"right":return baseLeft-tipWidth;break;default:log("settings.tipPosition switch passed bad value")}};d.css({paddingTop:b.verticalOffset,left:f(),top:e()});if(b.directionOffset==="left"){d.find(".container").css("left",b.horizontalOffset)}else{d.find(".container").css("right",b.horizontalOffset)}}catch(g){log("<!>CPTOOLTIP ERROR - positionTooltip Method: "+g)}},checkTipHover:function(){log("---->methods.checkTipHover()");a("#CPTOOLTIP").hover(function(){c.tipIsDisplayed=true;c.tipCount=1},function(){c.tipIsDisplayed=false;c.initKillTooltip()})},initKillTooltip:function(){log("---->methods.initKillTooltip()");log("methods.tipIsDisplayed: "+c.tipIsDisplayed);c.tipIsDisplayed===false?c.finalizeKillTip():log("methods.tipIsDisplayed: "+c.tipIsDisplayed)},finalizeKillTip:function(){log("---->methods.finalizeKillTip()");try{var b=Utils.queryParam("keeptipalive");if(b!=="true"){c.tipContent="";c.ajaxContent="";c.tipHTML="";$curr="";a("#CPTOOLTIP").hide();c.tipCount=0}else{log("keeping tip alive")}}catch(d){log("<!>CPTOOLTIP ERROR - finalizeKillTip Method: "+d)}},itemOffset:function(b,c){var d=a(b).offset();switch(c){case"left":return d.left;break;case"top":return d.top;break}},getBrowserDims:function(a,b){var c={bWidth:0,bHeight:0};if(document.body&&document.body.offsetWidth){c.bWidth=document.body.offsetWidth;c.bHeight=document.body.offsetHeight}if(document.compatMode==="CSS1Compat"&&document.documentElement&&document.documentElement.offsetWidth){c.bWidth=document.documentElement.offsetWidth;c.bHeight=document.documentElement.offsetHeight}if(window.innerWidth&&window.innerHeight){c.bWidth=window.innerWidth;c.bHeight=window.innerHeight}if(b){var d=[];d.push(c.bWidth/2);d.push(c.bHeight/2);return d}else{switch(a){case"width":return c.bWidth;break;case"height":return c.bHeight;break}}},delayHover:function(a,b){log("---->methods.delayHover()");try{var c;if(c){clearTimeout(c);c=null}c=setTimeout(function(){a.call()},b)}catch(d){log("<!>CPTOOLTIP ERROR - delayHover Method: "+d)}},defineAjax:function(){try{a.ajaxSetup({dataType:"html",type:"GET",crossDomain:true,timeout:6e4,tryCount:0,retryLimit:3,error:function(b){log("\n\nERROR: ---->GlossaryController.defineAjax()\n"+b.status+": "+b.statusText+"\n\n");if(b.statusText==="timeout"){this.tryCount++;if(this.tryCount<=this.retryLimit){a.ajax(this);return}else{log("retryLimit has been reached")}}}})}catch(b){log("<!>CPTOOLTIP ERROR - defineAjax Method: "+b)}},doAjax:function(d,e,f,g,h){try{log("Ajax Loading: "+d);a.ajax({timeout:e,async:f,cache:true,url:d,success:function(a){log("SUCCESS");if(b.sendDataToCallback!==true){c.ajaxContent=a}else{if(g){if(h){log("doAjax - with callback and pushParams");c.ajaxContent=g.call(this,a,h)}else if(!h){log("doAjax - with callback");c.ajaxContent=g.call(this,a)}}}}})}catch(i){log("<!>CPTOOLTIP ERROR - defineAjax Method: "+i)}}};a.fn.cptooltip=function(b){try{log("---->CPTOOLTIP CALLED");if(c[b]){return c[b].apply(this,Array.prototype.slice.call(arguments,1))}else if(typeof b==="object"||!b){return c.init.apply(this,arguments)}else{a.error("Method "+b+" does not exist on jQuery.tooltip")}}catch(d){a.error("<!>CPTOOLTIP ERROR - fn.cptooltip: "+d)}};var d={init:function(a){if(Utils.queryParam("testing")==="false"||Utils.queryParam("testing")===false){return}else{if(Utils.queryParam("showlogs")!=="true"){Utils.addParam("showlogs","true")}}log("-->CPTOOLTIP TESTING:\n"+a+":\n")},getSettings:function(a,c,e){d.init(a);var f=0,g=b,h,i;typeof c==="object"?g=c:g=b;for(h in g){if(typeof g[h]!=="object"){log(h+": "+g[h]+" ~type: "+typeof g[h]+"\n")}else if(typeof g[h]==="object"){for(i in g[h]){log(h+"."+i+": "+g[h][i]+" ~type: "+typeof g[h][i]+"\n")}}f=f+1}e===true?log("-->CPTOOLTIP TESTING:\nMODIFIED SETTINGS COUNT: "+f+"\n\n"):log("-->CPTOOLTIP TESTING:\nSETTINGS COUNT: "+f+"\n\n")}}})(jQuery)
