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"); Object.extend = function(dest, source, replace) { for(prop in source) { if(replace == false && dest[prop] != null) continue; dest[prop] = source[prop]; } return dest; } Object.extend(Function.prototype, { apply: function(o, a) { var r, x = "__fapply"; if(typeof o != "object") o = {}; o[x] = this; var s = "r = o." + x + "("; for(var i=0; i0) s += ","; s += "a[" + i + "]"; } s += ");"; eval(s); delete o[x]; return r; }, bind: function(o) { if(!Function.__objs) { Function.__objs = []; Function.__funcs = []; } var objId = o.__oid; if(!objId) Function.__objs[objId = o.__oid = Function.__objs.length] = o; var me = this; var funcId = me.__fid; if(!funcId) Function.__funcs[funcId = me.__fid = Function.__funcs.length] = me; if(!o.__closures) o.__closures = []; var closure = o.__closures[funcId]; if(closure) return closure; o = null; me = null; return Function.__objs[objId].__closures[funcId] = function() { return Function.__funcs[funcId].apply(Function.__objs[objId], arguments); }; } }, false); Object.extend(Array.prototype, { push: function(o) { this[this.length] = o; }, addRange: function(items) { if(items.length > 0) for(var i=0; i