var bq = window.dialogArguments || window.opener || window.parent || window.top; String.empty = ""; String.prototype.padLeft = function (length, character) { var C = this; try { while (C.length < length) { C = character + C; } return C; } finally { C = null; } }; String.prototype.padRight = function (length, character) { var C = this; try { while (C.length < length) { C = C + character; } return C; } finally { C = null; } }; String.prototype.trim = function () { var C = this; try { return C.replace(/^\s+|\s+$/g, ""); } finally { C = null; } }; String.prototype.urlEncode = function () { var C = this, Hh = null; try { Hh = C.replace(new RegExp("&amp;", "g"), "&"); Hh = escape(Hh); return Hh.replace(new RegExp("[+]", "g"), "%2B"); } finally { C = null; Hh = null; } }; String.prototype.urlDecode = function () { var C = this; try { unescape(C.replace(new RegExp("%2B", "g"), "+")); } finally { C = null; } }; Array.prototype.indexOf = function (o) { var C = this; try { for (var B = 0; B < C.length; B++) { if (C[B] == o) { return B; } } return -1; } finally { C = null; } }; Date.prototype.toString = function (format) { var C = this; try { var TI = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"), TG = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"), BF = new String(C.getFullYear()), TH = new String(Math.floor((C.getFullYear() / 100 - Math.floor(C.getFullYear() / 100)) * 100)), A8 = new String(C.getMonth() + 1), Bj = new String(C.getDay()), C5 = new String(C.getDate()), Cs = new String(C.getHours()), TK = parseInt(Cs) > 12 ? new String(parseInt(Cs) % 12) : Cs, G3 = new String(C.getMinutes()), HC = new String(C.getSeconds()), Jq = new String(C.getMilliseconds()), _ = ""; if (typeof format == "undefined") { format = "dd/MM/yyyy HH:mm:ss.fff"; } _ = new String(format); _ = _.replace(/fff/g, "$01"); _ = _.replace(/ff/g, "$02"); _ = _.replace(/f/g, "$03"); _ = _.replace(/ss/g, "$04"); _ = _.replace(/s/g, "$05"); _ = _.replace(/mm/g, "$06"); _ = _.replace(/m/g, "$07"); _ = _.replace(/hh/g, "$08"); _ = _.replace(/h/g, "$09"); _ = _.replace(/HH/g, "$10"); _ = _.replace(/H/g, "$11"); _ = _.replace(/dddd/g, "$12"); _ = _.replace(/ddd/g, "$13"); _ = _.replace(/dd/g, "$14"); _ = _.replace(/d/g, "$15"); _ = _.replace(/MMMM/g, "$16"); _ = _.replace(/MMM/g, "$17"); _ = _.replace(/MM/g, "$18"); _ = _.replace(/M/g, "$19"); _ = _.replace(/yyyy/g, "$20"); _ = _.replace(/yyy/g, "$21"); _ = _.replace(/yy/g, "$22"); _ = _.replace(/y/g, "$23"); _ = _.replace(/\$01/g, Math.floor(parseInt(Jq))); _ = _.replace(/\$02/g, Math.floor(parseInt(Jq) / 10)); _ = _.replace(/\$03/g, Math.floor(parseInt(Jq) / 100)); _ = _.replace(/\$04/g, HC.padLeft(2, "0")); _ = _.replace(/\$05/g, HC); _ = _.replace(/\$06/g, G3.padLeft(2, "0")); _ = _.replace(/\$07/g, G3); _ = _.replace(/\$08/g, TK.padLeft(2, "0")); _ = _.replace(/\$09/g, TK); _ = _.replace(/\$10/g, Cs.padLeft(2, "0")); _ = _.replace(/\$11/g, Cs); _ = _.replace(/\$12/g, TG[parseInt(Bj)]); _ = _.replace(/\$13/g, TG[parseInt(Bj)].substr(0, 3)); _ = _.replace(/\$14/g, C5.padLeft(2, "0")); _ = _.replace(/\$15/g, C5); _ = _.replace(/\$16/g, TI[parseInt(A8) - 1]); _ = _.replace(/\$17/g, TI[parseInt(A8) - 1].substr(0, 3)); _ = _.replace(/\$18/g, A8.padLeft(2, "0")); _ = _.replace(/\$19/g, A8); _ = _.replace(/\$20/g, BF); _ = _.replace(/\$21/g, BF); _ = _.replace(/\$22/g, TH); _ = _.replace(/\$23/g, TH.padLeft(2, "0")); return _; } finally { C = null; } }; Date.fromBritishDateString = function (dateString) { var GT = (new String(dateString)).trim(); try { var C5 = "", Ac = "", BF = 0, A8 = 0, Bj = 1, Cs = 0, G3 = 0, HC = 0, Jq = 0; if (GT.indexOf(" ") > -1) { C5 = GT.split(" ")[0]; Ac = GT.split(" ")[1]; } else { C5 = GT; } if (C5 != "") { BF = parseInt(C5.split("/")[2]); A8 = new Number(C5.split("/")[1]) - 1; Bj = new Number(C5.split("/")[0]); } if (Ac != "") { if (Ac.indexOf(".") > -1) { Jq = new Number(Ac.split(".")[1]); Ac = Ac.split(".")[0]; } Cs = Ac.split(":")[0]; G3 = Ac.split(":")[1]; HC = Ac.split(":")[2]; } var TM = new Date(BF, A8, Bj, Cs, G3, HC); TM.setMilliseconds(Jq); return TM; } catch (AA) { throw AA; } return null; }; Date.fromXMLDateString = function (dateString) { var GT = (new String(dateString)).trim(); try { var C5 = "", Ac = "", BF = 0, A8 = 0, Bj = 1, Cs = 0, G3 = 0, HC = 0; if (GT.indexOf("T") > -1) { C5 = GT.split("T")[0]; Ac = GT.split("T")[1]; } else { C5 = GT; } if (C5 != "") { BF = new Number(C5.split("-")[0]); A8 = new Number(C5.split("-")[1]) - 1; Bj = new Number(C5.split("-")[2]); } if (Ac != "") { if (Ac.indexOf("+") > -1) { Ac = Ac.split("+")[0]; } Cs = Ac.split(":")[0]; G3 = Ac.split(":")[1]; HC = Ac.split(":")[2]; } return new Date(BF, A8, Bj, Cs, G3, HC); } catch (AA) { throw AA; } return null; }; Function.prototype.AG = function (baseClass) { var Ef = null; try { if (this == baseClass) { throw "Cannot derive from self"; } for (Ef in baseClass.prototype) { if (typeof baseClass.prototype[Ef] == "function" && !this.prototype[Ef] && Ef != "base") { this.prototype[Ef] = baseClass.prototype[Ef]; } } if (!this.prototype.base) { this.prototype.base = new Array; } this.prototype.base[this.prototype.base.length] = baseClass; } catch (AA) { throw AA; } finally { Ef = null; } }; Function.prototype.AK = function () { if (this.prototype && this.prototype.base) { for (var B = 0; B < this.prototype.base.length; B++) { if (this.prototype.base[B]) { if (arguments.length >= B + 1 && typeof arguments[B + 1] != "undefined" && arguments[B + 1] != null) { this.prototype.base[B].apply(arguments[0], arguments[B + 1]); } else { this.prototype.base[B].apply(arguments[0]); } } } } }; Function.prototype.Bq = function (objectContext, functionName) { var EE = new Array, N1 = arguments.callee.caller, B; try { if (this.prototype && this.prototype.base) { if (!functionName) { var Ef = null; try { for (Ef in this.prototype) { if (this.prototype[Ef] == N1) { functionName = Ef; for (B = 0; B < N1.arguments.length; B++) { EE[B] = N1.arguments[B]; } break; } } } finally { Ef = null; } } if (functionName) { if (!EE) { for (B = 2; B < arguments.length; B++) { EE[B - 2] = arguments[B]; } } for (B = this.prototype.base.length - 1; B >= 0; B--) { if (this.prototype.base[B] && this.prototype.base[B].prototype && this.prototype.base[B].prototype[functionName]) { return this.prototype.base[B].prototype[functionName].apply(objectContext, EE); } } } } } finally { EE = null; N1 = null; } }; var indigo = {}; indigo.GK = function () { var Hd = "indigo"; function objectName(name) { return "[" + Hd + "." + name + "]"; } function Cy() { var C = this; C.disposed = false; C.TZ = function () { if (document.detachEvent) { document.detachEvent("onunload", function () { C.dispose(); }); } else if (document.removeEventListener) { document.removeEventListener("unload", function () { C.dispose(); }, false); } delete C; }; } Cy.prototype.dispose = function () { if (!this.disposed) { this.disposed = true; } }; Cy.prototype.toString = function () { return objectName("object"); }; this.object = Cy; function q(ev) { var C = this; try { C.originalEvent = ev; C.keyCode = ev.which ? ev.which : ev.keyCode; C.clientX = ev.clientX; C.clientY = ev.clientY; C.sourceElement = ev.srcElement ? ev.srcElement : ev.target; } catch (AA) { throw AA; } finally { C = null; } } q.AG(Cy); q.prototype.cancelBubble = function () { this.originalEvent.cancelBubble = true; if (this.originalEvent.stopPropagation) { this.originalEvent.stopPropagation(); } }; this.event = q; function CL() { CL.AK(this); this.count = 0; this.items = new Object; } CL.AG(Cy); CL.prototype.add = function (o) { this.addAt(this.count, o); return o; }; CL.prototype.addAt = function (index, o) { for (var B = this.count; B > index; B--) { this.items[B] = this.items[B - 1]; } this.items[index] = o; this.count++; return o; }; CL.prototype.clear = function () { while (this.count > 0) { this.removeAt(0); } }; CL.prototype.contains = function (o) { return this.indexOf(o) > -1; }; CL.prototype.dispose = function () { if (!this.disposed) { this.clear(); CL.Bq(this); } }; CL.prototype.each = function (fn) { for (var B = 0; B < this.count; B++) { fn.call(this.items[B], B); } }; CL.prototype.indexOf = function (o) { for (var B = 0; B < this.count; B++) { if (this.items[B] == o) { return B; } } return -1; }; CL.prototype.remove = function (o) { for (var B = 0; B < this.count; B++) { if (this.items[B] == o) { this.removeAt(B); break; } } }; CL.prototype.removeAt = function (index) { if (this.items[index].dispose) { this.items[index].dispose(); } this.items[index] = null; for (var B = index; B < this.count - 1; B++) { this.items[B] = this.items[B + 1]; } this.items[this.count - 1] = null; this.count--; }; CL.prototype.toString = function () { return objectName("collection"); }; this.collection = CL; function NX(f) { NX.AK(this); this.f = f; } NX.AG(Cy); NX.prototype.toString = function () { return objectName("objectEventFunction"); }; function NS() { NS.AK(this); } NS.AG(CL); NS.prototype.toString = function () { return objectName("objectEventFunctionCollection"); }; function NW(eventName) { NW.AK(this); this.eventName = eventName; this.objectEventFunctions = new NS; } NW.AG(Cy); NW.prototype.toString = function () { return objectName("objectEvent"); }; function NV() { NV.AK(this); } NV.AG(CL); NV.prototype.toString = function () { return objectName("objectEventCollection"); }; function G7(Jn, Jp) { G7.AK(this); this.events = new NV; this.Jn = Jn; this.Jp = Jp; } G7.AG(Cy); G7.prototype.attach = function (eventName, f) { var C = this, Fc = false, Iw = false; try { for (var B = 0; B < C.events.count; B++) { if (C.events.items[B].eventName == eventName) { Fc = true; for (var M = 0; M < C.events.items[B].objectEventFunctions.count; M++) { if (C.events.items[B].objectEventFunctions.items[M].f == f) { Iw = true; break; } } if (!Iw) { C.events.items[B].objectEventFunctions.add(new NX(f)); if (C.Jn) { C.Jn(eventName, f); } } break; } } if (!Fc) { throw "Event \"" + eventName + "\" not registered for object \"" + C.toString() + "\""; } } catch (AA) { throw AA; } finally { C = null; Fc = null; Iw = null; } }; G7.prototype.call = function (sender, eventName, args) { var C = this; try { for (var B = 0; B < C.events.count; B++) { if (C.events.items[B].eventName == eventName) { for (var M = 0; M < C.events.items[B].objectEventFunctions.count; M++) { C.events.items[B].objectEventFunctions.items[M].f(sender, args); } break; } } } catch (AA) { throw AA; } finally { C = null; } }; G7.prototype.register = function (eventName) { var C = this, Fc = false; try { for (var B = 0; B < C.events.count; B++) { if (C.events.items[B].eventName == eventName) { Fc = true; break; } } if (!Fc) { C.events.add(new NW(eventName)); } } catch (AA) { throw AA; } finally { C = null; Fc = null; } }; G7.prototype.detach = function (eventName, f) { var C = this; try { for (var B = 0; B < C.events.count; B++) { if (C.events.items[B].eventName == eventName) { for (var M = 0; M < C.events.items[B].objectEventFunctions.count; M++) { if (C.events.items[B].objectEventFunctions.items[M].f == f) { C.events.items[B].objectEventFunctions.removeAt(M); } } if (C.Jp) { C.Jp(eventName, f); } break; } } } catch (AA) { throw AA; } finally { C = null; } }; G7.prototype.toString = function () { return objectName("objectEventHandler"); }; this.objectEventHandler = G7; function K3(f) { K3.AK(this); this.f = f; } K3.AG(Cy); K3.prototype.toString = function () { return objectName("elementEventFunction"); }; function Ji() { Ji.AK(this); } Ji.AG(CL); Ji.prototype.create = function (f) { var Tf = new K3(f); Ji.prototype.add.call(this, Tf); return Tf; }; Ji.prototype.toString = function () { return objectName("elementEventFunctionCollection"); }; function Jg(el, eventName) { Jg.AK(this); var C = this; C.el = el; C.eventName = eventName; C.functions = new Ji; function X8(AA) { var AC = true, PC = true; for (var i = 0; i < C.functions.count; i++) { PC = C.functions.items[i].f(AA); if (typeof PC != "undefined" && PC == false) { AC = false; } } return AC; } function NO(AA) { var ev = AA ? AA : event; return X8(new q(ev)); } function X7() { if (el.attachEvent) { el.attachEvent("on" + C.eventName, NO); } else if (el.addEventListener) { el.addEventListener(C.eventName, NO, false); } } X7(); function PB() { if (el.detachEvent) { el.detachEvent("on" + C.eventName, NO); } else if (el.removeEventListener) { el.removeEventListener(C.eventName, NO, false); } } C.PB = PB; } Jg.AG(Cy); Jg.prototype.dispose = function () { if (!this.disposed) { this.PB(); this.el = null; this.functions.dispose(); this.functions = null; Jg.Bq(this); } }; Jg.prototype.toString = function () { return objectName("elementEvent"); }; function Jh() { Jh.AK(this); } Jh.AG(CL); Jh.prototype.create = function (el, eventName) { var Tc = new Jg(el, eventName); Jh.prototype.add.call(this, Tc); return Tc; }; Jh.prototype.toString = function () { return objectName("elementEventCollection"); }; function Jj(el) { Jj.AK(this); this.el = el; this.events = new Jh; } Jj.AG(CL); Jj.prototype.dispose = function () { if (!this.disposed) { this.el = null; this.events.dispose(); this.events = null; Jj.Bq(this); } }; Jj.prototype.toString = function () { return objectName("elementEventHandlerElement"); }; function Jm() { Jm.AK(this); } Jm.AG(CL); Jm.prototype.create = function (el) { var Te = new Jj(el); Jm.prototype.add.call(this, Te); return Te; }; Jm.prototype.toString = function () { return objectName("elementEventCollectionElementCollection"); }; function HB() { HB.AK(this); this.elements = new Jm; } HB.AG(Cy); HB.prototype.dispose = function () { if (!this.disposed) { this.elements.dispose(); this.elements = null; HB.Bq(this); } }; HB.prototype.attach = function (el, eventName, f) { var C = this, PU = false, Fc = false, Iw = false; try { if (el != null) { for (var B = 0; B < C.elements.count; B++) { if (C.elements.items[B].el == el) { PU = true; for (var M = 0; M < C.elements.items[B].events.count; M++) { if (C.elements.items[B].events.items[M].eventName == eventName) { Fc = true; for (var B5 = 0; B5 < C.elements.items[B].events.items[M].functions.count; B5++) { if (C.elements.items[B].events.items[M].functions.items[B5].f == f) { Iw = true; break; } } if (!Iw) { C.elements.items[B].events.items[M].functions.add(new K3(f)); } break; } } if (!Fc) { C.elements.items[B].events.create(el, eventName).functions.create(f); } break; } } if (!PU) { C.elements.create(el).events.create(el, eventName).functions.create(f); } } } catch (AA) { throw AA; } finally { C = null; PU = null; Fc = null; Iw = null; } }; HB.prototype.detach = function (el, eventName, f) { var C = this; try { if (el != null) { for (var B = 0; B < C.elements.count; B++) { if (C.elements.items[B].el == el) { for (var M = 0; M < C.elements.items[B].events.count; M++) { if (C.elements.items[B].events.items[M].eventName == eventName) { for (var B5 = 0; B5 < C.elements.items[B].events.items[M].functions.count; B5++) { if (C.elements.items[B].events.items[M].functions.items[B5].f == f) { C.elements.items[B].events.items[M].functions.removeAt(B5); break; } } break; } } break; } } } } catch (AA) { throw AA; } finally { C = null; } }; HB.prototype.toString = function () { return objectName("elementEventHandler"); }; this.elementEventHandler = HB; function K1() { K1.AK(this); var C = this; C.head = null; } K1.AG(CL); K1.prototype.include = function (nameSpaceName) { var C = this, Ed = document.getElementsByTagName("head"), HA = null, Jk = false; try { if (Ed && Ed[0]) { C.head = Ed[0]; for (var B = 0; B < C.head.childNodes.length; B++) { HA = C.head.childNodes[B]; if (HA.nodeName.toUpperCase() == "SCRIPT") { var Xh = HA.getAttribute("src"); if (Xh.toLowerCase() == "javascript/" + nameSpaceName.toLowerCase() + ".js") { Jk = true; } } } if (!Jk) { HA = document.createElement("script"); HA.setAttribute("type", "text/javascript"); HA.setAttribute("src", "javascript/" + nameSpaceName.toLowerCase() + ".js"); C.head.appendChild(HA); } } } catch (AA) { throw AA; } finally { Ed = null; HA = null; } }; K1.prototype.toString = function () { return objectName("namespaceManager"); }; this.nameSpaceManager = new K1; function Jl(N) { this.N = N; this.Mz = this.N.style.position; this.Ta = this.N.style.visibility; this.Tb = this.N.style.display; this.PN = false; } Jl.AG(Cy); Jl.prototype.showElement = function () { if (this.N.offsetWidth == 0 || this.N.offsetHeight == 0) { this.N.style.position = "absolute"; this.N.style.visibility = "hidden"; this.N.style.display = "block"; this.PN = true; } }; Jl.prototype.resetElement = function () { if (this.PN) { this.N.style.position = this.Mz; this.N.style.visibility = this.Ta; this.N.style.display = this.Tb; this.PN = false; } }; Jl.prototype.dispose = function () { if (!this.disposed) { this.N = null; this.Mz = null; this.Ta = null; this.Tb = null; this.bp = null; } }; Jl.prototype.toString = function () { return objectName("styleSetting"); }; function G5() { G5.AK(this); } G5.AG(CL); G5.prototype.fillFromElement = function (N) { var U = N; while (U && U.style) { this.add(new Jl(U)); U = U.parentNode; } U = null; }; G5.prototype.showElements = function () { for (var B = this.count - 1; B >= 0; B--) { this.items[B].showElement(); } }; G5.prototype.resetElements = function () { for (var B = 0; B < this.count; B++) { this.items[B].resetElement(); } }; G5.prototype.toString = function () { return objectName("styleSettingCollection"); }; function Ea() { Ea.AK(this); } Ea.AG(indigo.object); Ea.prototype.left = function (element) { if (!element) { return 0; } var Fk = 0; if (element.offsetParent) { while (true) { Fk += element.offsetLeft; if (!element.offsetParent) { break; } element = element.offsetParent; } } else if (element.x) { Fk += element.x; } return Fk; }; Ea.prototype.height = function (element) { var Ez = new G5, CP = 0; try { Ez.fillFromElement(element); Ez.showElements(); CP = element.offsetHeight; Ez.resetElements(); } finally { Ez.dispose(); Ez = null; } return CP; }; Ea.prototype.relativeLeft = function (element) { if (!element) { return 0; } var Fk = 0; if (element.offsetParent) { Fk += element.offsetLeft; } return Fk; }; Ea.prototype.top = function (element) { if (!element) { return 0; } var IY = 0; if (element.offsetParent) { while (true) { IY += element.offsetTop; if (!element.offsetParent) { break; } element = element.offsetParent; } } else if (element.y) { IY += element.y; } return IY; }; Ea.prototype.toString = function () { return objectName("elementHelper"); }; Ea.prototype.width = function (element) { var Ez = new G5, BR = 0; try { Ez.fillFromElement(element); Ez.showElements(); BR = element.offsetWidth; Ez.resetElements(); } finally { Ez.dispose(); Ez = null; } return BR; }; Ea.prototype.isChildOf = function (parentElement, childElement) { var AI = childElement; while (AI && AI.parentElement) { AI = AI.parentElement; if (AI == parentElement) { return true; } } return false; }; Ea.prototype.preventSelect = function (element) { if (element.style.MozUserSelect !== undefined) { element.style.MozUserSelect = "none"; } else if (element.style.webkitUserSelect !== undefined) { element.style.webkitUserSelect = "none"; } element.setAttribute("unselectable", "on"); }; Ea.prototype.getStyle = function (element, style) { return element.currentStyle ? element.currentStyle[style] : window.getComputedStyle(element, null).getPropertyValue(style); }; this.elementHelper = new Ea; function Ij() { Ij.AK(this); } Ij.AG(indigo.object); Ij.prototype.getLeft = function () { var AC = 0, DY = window, GP = null, E5 = null, Oz = null, B; try { while (DY.parent && DY.parent != DY) { GP = DY.parent; E5 = GP.document.getElementsByTagName("iframe"); for (B = 0; B < E5.length; B++) { if (E5[B].contentWindow == DY) { AC += indigo.elementHelper.left(E5[B]); break; } } DY = GP; } } finally { DY = null; GP = null; E5 = null; Oz = null; } return AC; }; Ij.prototype.getTop = function () { var AC = 0, DY = window, GP = null, E5 = null, Oz = null, B; try { while (DY.parent && DY.parent != DY) { GP = DY.parent; E5 = GP.document.getElementsByTagName("iframe"); for (B = 0; B < E5.length; B++) { if (E5[B].contentWindow == DY) { AC += indigo.elementHelper.top(E5[B]); break; } } DY = GP; } } finally { DY = null; GP = null; E5 = null; Oz = null; } return AC; }; Ij.prototype.getScrollXY = function () { var scrOfX = 0, scrOfY = 0; if (typeof window.pageYOffset == "number") { scrOfY = window.pageYOffset; scrOfX = window.pageXOffset; } else if (document.body && (document.body.scrollLeft || document.body.scrollTop)) { scrOfY = document.body.scrollTop; scrOfX = document.body.scrollLeft; } else if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) { scrOfY = document.documentElement.scrollTop; scrOfX = document.documentElement.scrollLeft; } return { x: scrOfX, y: scrOfY }; }; Ij.prototype.toString = function () { return objectName("windowHelper"); }; this.windowHelper = new Ij; }; indigo.GK();