var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };
if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }
{
let window = _____WB$wombat$assign$function_____("window");
let self = _____WB$wombat$assign$function_____("self");
let document = _____WB$wombat$assign$function_____("document");
let location = _____WB$wombat$assign$function_____("location");
let top = _____WB$wombat$assign$function_____("top");
let parent = _____WB$wombat$assign$function_____("parent");
let frames = _____WB$wombat$assign$function_____("frames");
let opener = _____WB$wombat$assign$function_____("opener");
// UDMv4.52 //
///////////////////////////////////////////////////////////////////
// //
// ULTIMATE DROP DOWN MENU Version 4.52 by Brothercake //
// http://www.udm4.com/ //
// //
// This script may not be used or distributed without license //
// //
///////////////////////////////////////////////////////////////////
//##########################################################
//*** YOU WILL ALMOST-CERTAINLY NEED TO UPDATE
//*** SERVER-SIDE GENERATORS WHENEVER YOU CHANGE THIS
//##########################################################
//*** DO NOT REMOVE //start or //stop OR SIMILAR COMMENTS
//udm tree global var
var umTree=null;
//ready state flag for popup alignment
//and for shielding unsupported browsers from interactive scripting
//because for them it's never true
um.ready=0;
//cpstart
//parseInt shortcut function
um.pi=function(n){n=parseInt(n,10);return (isNaN(n)?0:n);};
//'undefined'
um.un='undefined';
//document
um.m=document;
//cpstop
//getElementById
um.gd=function(n){return um.m.getElementById(n);};
//make it displayed/non-displayed
um.xd=function(n){n.style.display='block';};
um.xn=function(n){n.style.display='none';};
//make it visible/invisible
um.xv=function(n){n.style.visibility='visible';};
um.xh=function(n){n.style.visibility='hidden';};
//is this a navbar element
um.ne=function(n){return n.parentNode.className=='udm';};
//cpstart
//check for undefined new variables
if(typeof um.reset==um.un){um.reset=['yes','yes','yes'];}
if(typeof um.hstrip==um.un){um.hstrip=['none','yes'];}
//CHANGED
if(typeof um.reset[3]==um.un){um.reset[3]='no';}
//process and copy all custom vars
//both so that we can process them more efficiently
//and so we'll have shortcut-names to reduce the code size
//create an array of custom.js array names
//so we can reference um.something == um['something'] == um[um.cx[i]]
// 0-6 7-9 10-13 14-16 17-48 49-60 61-92
um.cx=['orientation','list','behaviors','navbar','items','menus','menuItems','menuClasses','itemClasses'];
//compact array for custom vars
um.ei=0;um.e=[];
//compact matrix for classes
um.v=[];um.w=[];
//count ad-hoc classes
um.vl=0;
um.wl=0;
//image objects array for caching
um.ek=0;um.im=[];
//process vars method
um.pcv=function(v)
{
//using regex literals here,because mac/ie5.0
//appears not to garbage collect the RegExp constructor properly
//if it's a number variable
if(v&&/^[+\-]?[0-9]+$/.test(v))
{
//turn it into a number
v=um.pi(v);
//if this is open or close timer
//and it's less than 1 set it to 1
//having a minimum value prevents a potential
//shadow-displacement problem with popup alignment
//and also saves a few snips of code in udm-dom.js
//and also prevents negative numbers
if((um.ei==10||um.ei==11)&&v<1){v=1;}
}
//if it's an image
if(v&&/\.(gif|png|mng|jpg|jpeg|jpe|bmp)/i.test(v))
{
//cache image objects in an array because image loading is asynchronous
//so it might not have finished before this comes round again
um.im[um.ek]=new Image;
um.im[um.ek++].src=um.baseSRC+v;
}
return v;
};
//cpstop
//identify dom support//exclude HPR3.04 because its JS capabilities get in the way of good accessibility through graceful degrading
um.d=(typeof um.m.getElementById!=um.un&&(typeof um.m.createElement!=um.un||typeof um.m.createElementNS!=um.un)&&typeof navigator.IBM_HPR==um.un);
//get UA string - used with caution :)
um.u=navigator.userAgent.toLowerCase();
//need to exclude O6,because it declares support for createElement()
//but can't actually add the created element to the page
//this var includes O5 for convenience's sake
um.o5=/opera[\/ ][56]/.test(um.u);
um.k=(navigator.vendor=='KDE');
//CHANGED: if(um.o5||um.k){um.d=0;}
if(um.o5){um.d=0;}
//browsers which support the basic navbar styling
//CHANGED: um.b=(um.d||um.o5||um.k);
um.b=(um.d||um.o5);
//hide static menus for netscape 4 and other primitive CSS browsers
//CHANGED: if(um.list[2]=='yes'&&!(um.d||um.b))
//{
// document.write('');
//}
//identify specific browsers - these are used to exclude from a feature or add in a hack,
//on the basis that everything is assumed to work right unless it's known not to
//opera 7 or later
um.o7=(um.d&&typeof window.opera!=um.un);
//opera 7.5+ supports clip properly,so clip-based extensions can now be supported
um.o75=0;
//opera 7.3 supports