function object(B) {
    function A() {}
    A.prototype = B;
    return new A();
}
function $F() {
    return function() {
        if (arguments.length !== 0) {
            return arguments;
        }
        return;
    };
}
if (typeof _global_ === "undefined") {
    _global_ = {
        "@namespace": function(F, B) {
            var C, A = F.split("."),
            E = window,
            D = false;
            if (/[^a-z.]/.test(F)) {
                console.error("@namepace: not a valid namespace identifier");
                return false;
            }
            for (C = 0; C < A.length; C++) {
                if (!E[A[C]]) {
                    E[A[C]] = {};
                    D = true;
                }
                E = E[A[C]];
            }
            if ( !! B) {
                return D;
            }
            return true;
        },
        "@import": function(C, A) {
            for (var B in C) {
                if (C.hasOwnProperty(B)) {
                    A[B] = C[B];
                }
            }
        },
        "@export": function(B, A) {
            window[A] = B;
        },
        "@requires": function(F, E) {
            if (!E && F.indexOf("http") < 0 && typeof window[F] !== "undefined") {
                return {
                    oncomplete: function(G) {
                        G();
                    }
                };
            }
            var D = "http://www.zavattapittore.com/lara/milano/js/",
            C = "20080113",
            B = {
          //      "ndm.$": "ndm.shorthand.js",
            //    "ndm.functional": "functional.js",
              //  "ndm.controls.calendar": "ndm.controls.calendar.js/0,," + C + ",00.js",
                //"ndm.controls.autocomplete": "ndm.controls.autocomplete.js/0,," + C + ",00.js",
              //  "ndm.controls.thingomatic": "ndm.controls.thingomatic.js/0,," + C + ",00.js",
              //  "ndm.controls.zebra": "ndm.controls.zebra.js/0,," + C + ",00.js",
              //  "ndm.controls.sortable": "ndm.controls.sortable.js/0,," + C + ",00.js"
            },
            A;
            if ((ndm.ajax && !!B[F]) || F.indexOf("http") >= 0 || !!E) {
                if (F.indexOf("http") >= 0 || !!E) {
                    A = ndm.ajax.insertScript(F);
                } else {
                    A = ndm.ajax.insertScript((D + B[F]));
                }
                if (ndm.dom.isIE()) {
                    A.oncomplete = function(G) {
                        A.onreadystatechange = function() {
                            if (this.readyState != "loaded" && this.readyState != "complete") {
                                return;
                            } else {
                                G();
                            }
                        };
                    };
                } else {
                    A.oncomplete = function(G) {
                        if (A.addEventListener && /HTMLScriptElement/.test(A)) {
                            A.addEventListener("load", function() {
                                G();
                            },
                            false);
                        } else {
                            A.onload = G;
                            return A;
                        }
                    };
                }
                return A;
            } else {
                console.log("Missing module. Check your source version. Aborting now.");
                throw 'Fatal error: module "' + a.join(".") + '" not found';
            }
            return true;
        }
    };
}

if ((!document.getElementById) && document.all) {
    document.getElementById = function(A) {
        return document.all[A];
    };
}
if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function(B, C) {
        var A = this.length,
        D = Number(arguments[1]) || 0;
        D = (D < 0) ? Math.ceil(D) : Math.floor(D);
        if (D < 0) {
            D += A;
        }
        for (; D < A; D++) {
            if (D in this && this[D] === B) {
                return D;
            }
        }
        return - 1;
    };
}
if (!Array.prototype.map) {
    Array.prototype.map = function(B) {
        var A = this.length,
        E, D, C;
        if (typeof B != "function") {
            throw new TypeError();
        }
        D = [];
        C = arguments[1];
        for (E = 0; E < A; E++) {
            if (E in this) {
                D[E] = B.call(C, this[E], E, this);
            }
        }
        return D;
    };
}
if (!Array.prototype.filter) {
    Array.prototype.filter = function(B) {
        var A = this.length,
        E, D, C, F;
        if (typeof B != "function") {
            throw new TypeError();
        }
        D = [];
        C = arguments[1];
        for (E = 0; E < A; E++) {
            if (E in this) {
                F = this[E];
                if (B.call(C, F, E, this)) {
                    D.push(F);
                }
            }
        }
        return D;
    };
}
if (!Array.prototype.forEach) {
    Array.prototype.forEach = function(B) {
        var A = this.length,
        D, C;
        if (typeof B != "function") {
            throw new TypeError();
        }
        C = arguments[1];
        for (D = 0; D < A; D++) {
            if (D in this) {
                B.call(C, this[D], D, this);
            }
        }
    };
}
if (typeof console === "undefined") {
    console = {
        log: function() {},
        error: function() {}
    };
}
Date.prototype.format = function(A) {
    var B = this;
    var C = function(G, F) {
        if (!F) {
            F = 2;
        }
        G = String(G);
        for (var E = 0, D = ""; E < (F - G.length); E++) {
            D += "0";
        }
        return D + G;
    };
    return A.replace(/"[^"]*"|'[^']*'|\b(?:d{1,4}|m{1,4}|yy(?:yy)?|([hHMs])\1?|TT|tt|[lL])\b/g, function(E) {
        switch (E) {
        case "d":
            return B.getDate();
        case "dd":
            return C(B.getDate());
        case "ddd":
            return ["Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat"][B.getDay()];
        case "dddd":
            return ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"][B.getDay()];
        case "m":
            return B.getMonth() + 1;
        case "mm":
            return C(B.getMonth() + 1);
        case "mmm":
            return ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"][B.getMonth()];
        case "mmmm":
            return ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"][B.getMonth()];
        case "yy":
            return String(B.getFullYear()).substr(2);
        case "yyyy":
            return B.getFullYear();
        case "h":
            return B.getHours() % 12 || 12;
        case "hh":
            return C(B.getHours() % 12 || 12);
        case "H":
            return B.getHours();
        case "HH":
            return C(B.getHours());
        case "M":
            return B.getMinutes();
        case "MM":
            return C(B.getMinutes());
        case "s":
            return B.getSeconds();
        case "ss":
            return C(B.getSeconds());
        case "l":
            return C(B.getMilliseconds(), 3);
        case "L":
            var D = B.getMilliseconds();
            if (D > 99) {
                D = Math.round(D / 10);
            }
            return C(D);
        case "tt":
            return B.getHours() < 12 ? "am": "pm";
        case "TT":
            return B.getHours() < 12 ? "AM": "PM";
        default:
            return E.substr(1, E.length - 2);
        }
    });
};
_global_["@namespace"]("tanto");
_global_["@namespace"]("ndm");
tanto = ndm;
tanto.namespace = _global_["@namespace"];
tanto.load = _global_["@requires"];
_global_["@namespace"]("ndm.dom");
ndm.dom = function() {
    var initList = [],
    _timer = null,
    i;
    var init = function() {
        if (arguments.callee.done) {
            return;
        }
        arguments.callee.done = true;
        if (_timer) {
            window.clearInterval(_timer);
            _timer = null;
        }
        for (i = 0; i !== initList.length; i++) {
            initList[i].assert();
        }
    };
    var isMSIE =
    /*@cc_on!@*/
    false;
    var InitBundle = function(functor, precondition, postcondition) {
        this.functor = functor;
        this.precondition = precondition;
        this.postcondition = postcondition;
    };
    InitBundle.prototype.assert = function() {
        if (this.precondition.call() === true) {
            this.functor.call();
            if (this.postcondition.call() === true) {
                return true;
            } else {
                return false;
            }
        } else {
            return false;
        }
    };
    if (document.addEventListener) {
        document.addEventListener("DOMContentLoaded", init, null);
    }
    if (isMSIE && false) {
        document.write("<script id=__ready defer src=//:><\/script>");
        document.all.__ready.onreadystatechange = function() {
            if (this.readyState == "complete") {
                this.removeNode();
                init();
            }
        };
    }
    if (/WebKit/i.test(navigator.userAgent)) {
        _timer = window.setInterval(function() {
            if (/loaded|complete/.test(document.readyState)) {
                init();
            }
        },
        10);
    }
    window.onload = function() {
        init();
        if (isMSIE) {
            try {
                document.execCommand("BackgroundImageCache", false, true);
            } catch(e) {}
        }
    };
    var purge = function(d) {
        var a = d.attributes,
        i, l, n;
        if (a) {
            l = a.length;
            for (i = 0; i < l; i += 1) {
                n = a[i].name;
                if (typeof d[n] === "function") {
                    d[n] = null;
                }
            }
        }
        a = d.childNodes;
        if (a) {
            l = a.length;
            for (i = 0;
            i < l; i += 1) {
                ndm.dom.purge(d.childNodes[i]);
            }
        }
    };
    return {
        hasClass: function(el, className) {
            var re = el.className.split(" ");
            return - 1 !== re.indexOf(className);
        },
        getElementsByClassName: function() {
            if (document.getElementsByClassName) {
                return function(className, parentElement, nodeName) {
                    var paren = null,
                    eln = null,
                    s;
                    if (typeof parentElement === "string") {
                        eln = parentElement;
                        paren = nodeName;
                        if (paren === null && arguments.length === 3) {
                            return [];
                        }
                    } else {
                        eln = nodeName;
                        paren = parentElement;
                        if (paren === null && arguments.length >= 2) {
                            return [];
                        }
                    }
                    s = (paren || document).getElementsByClassName(className);
                    if (eln && eln != "*" && typeof Array.prototype.filter != "undefined") {
                        eln = eln.toUpperCase();
                        return Array.prototype.filter.call(s, function(el) {
                            return el.nodeName == eln;
                        });
                    } else {
                        return Array.prototype.slice.call(s, 0);
                    }
                };
            }
            if (document.evaluate) {
                return function(className, parentElement, nodeName) {
                    var paren = null,
                    eln = null;
                    if (typeof parentElement === "string") {
                        eln = parentElement;
                        paren = nodeName;
                    } else {
                        eln = nodeName;
                        paren = parentElement;
                    }
                    if (!eln) {
                        eln = "*";
                    }
                    if (!paren) {
                        paren = document;
                    }
                    var results = [],
                    s,
                    i = 0,
                    element;
                    s = document.evaluate(".//" + eln + "[contains(concat(' ', @class, ' '), ' " + className + " ')]", paren, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
                    while ((element = s.snapshotItem(i++))) {
                        results.push(element);
                    }
                    return results;
                };
            }
            return function(className, parentElement, nodeName) {
                var paren = null,
                eln = null;
                if (typeof parentElement === "string") {
                    eln = parentElement;
                    paren = nodeName;
                } else {
                    eln = nodeName;
                    paren = parentElement;
                }
                if (!eln) {
                    eln = "*";
                }
                if (!paren) {
                    paren = document;
                }
                var results = [],
                s = paren.getElementsByTagName(eln),
                i = 0,
                element,
                elementClassName;
                while ((element = s[i++])) {
                    if ((elementClassName = element.className) && (elementClassName == className || ndm.dom.hasClass(element, className))) {
                        results.push(element);
                    }
                }
                return results;
            };
        } (),
        isIE: function() {
            return !! isMSIE;
        },
        addLoadEvent: function(functor, precondition, postcondition) {
            var _precondition = precondition ||
            function() {
                return true;
            },
            _postcondition = postcondition ||
            function() {
                return true;
            },
            ib = new InitBundle(functor, _precondition, _postcondition);
            initList.push(ib);
            return true;
        },
        getCurrentStyle: function(elem, prop) {
            var ar, s, i;
            if (elem.currentStyle) {
                ar = prop.match(/\w[^-]*/g);
                s = ar[0];
                for (i = 1; i < ar.length; ++i) {
                    s += ar[i].replace(/\w/, ar[i].charAt(0).toUpperCase());
                }
                return elem.currentStyle[s];
            } else {
                if (document.defaultView.getComputedStyle) {
                    return document.defaultView.getComputedStyle(elem, null).getPropertyValue(prop);
                }
            }
        },
        getPageSize: function() {
            var xScroll, yScroll;
            if (window.innerHeight && window.scrollMaxY) {
                xScroll = document.body.scrollWidth;
                yScroll = window.innerHeight + window.scrollMaxY;
            } else {
                if (document.body.scrollHeight > document.body.offsetHeight) {
                    xScroll = document.body.scrollWidth;
                    yScroll = document.body.scrollHeight;
                } else {
                    xScroll = document.body.offsetWidth;
                    yScroll = document.body.offsetHeight;
                }
            }
            var windowWidth, windowHeight;
            if (window.innerHeight) {
                windowWidth = window.innerWidth;
                windowHeight = window.innerHeight;
            } else {
                if (document.documentElement && document.documentElement.clientHeight) {
                    windowWidth = document.documentElement.clientWidth;
                    windowHeight = document.documentElement.clientHeight;
                } else {
                    if (document.body) {
                        windowWidth = document.body.clientWidth;
                        windowHeight = document.body.clientHeight;
                    }
                }
            }
            var pageHeight = 0;
            if (yScroll < windowHeight) {
                pageHeight = windowHeight;
            } else {
                pageHeight = yScroll;
            }
            var pageWidth = 0;
            if (xScroll < windowWidth) {
                pageWidth = windowWidth;
            } else {
                pageWidth = xScroll;
            }
            return [pageWidth, pageHeight, windowWidth, windowHeight];
        },
        getPageScroll: function() {
            var yScroll;
            if (window.pageYOffset) {
                yScroll = window.pageYOffset;
            } else {
                if (document.documentElement && document.documentElement.scrollTop) {
                    yScroll = document.documentElement.scrollTop;
                } else {
                    if (document.body) {
                        yScroll = document.body.scrollTop;
                    }
                }
            }
            return ["", yScroll];
        },
        getEventTarget: function(e) {
            var ev = e || window.event,
            targ;
            if (typeof ev === "undefined") {
                return false;
            }
            targ = ev.target || ev.srcElement;
            if (targ.nodeType === ndm.dom.nodeType.TEXT_NODE) {
                targ = targ.parentNode;
            }
            return targ;
        },
        findPos: function(obj) {
            var curleft = 0,
            curtop = 0;
            if (obj.offsetParent) {
                curleft = obj.offsetLeft;
                curtop = obj.offsetTop;
                while ( !! obj.offsetParent) {
                    obj = obj.offsetParent;
                    curleft += obj.offsetLeft;
                    curtop += obj.offsetTop;
                }
            }
            return [curleft, curtop];
        },
        findParent: function(e, idOrClass) {
            var paren = e.parentNode;
            if (!paren || e.nodeName.toLowerCase() == "html") {
                return false;
            } else {
                if (paren.id === idOrClass) {
                    return paren;
                } else {
                    if (ndm.dom.hasClass(paren, idOrClass)) {
                        return paren;
                    } else {
                        return arguments.callee(paren, idOrClass);
                    }
                }
            }
        },
        getMousePos: function(e) {
            var ev = e || window.event,
            tempX = 0,
            tempY = 0;
            if (typeof ev.pageY === "number") {
                tempX = ev.pageX;
                tempY = ev.pageY;
            } else {
                if (typeof ev.clientY === "number") {
                    tempX = ev.clientX + document.body.scrollLeft;
                    tempY = ev.clientY + document.body.scrollTop;
                }
            }
            if (tempX < 0) {
                tempX = 0;
            }
            if (tempY < 0) {
                tempY = 0;
            }
            return [tempX, tempY];
        },
        replaceHTML: function(el, html) {
            var oldEl, newEl;
            oldEl = (typeof el === "string" ? document.getElementById(el) : el);
            if (isMSIE) {
                purge(oldEl);
                oldEl.innerHTML = html;
                return oldEl;
            }
            newEl = oldEl.cloneNode(false);
            newEl.innerHTML = html;
            oldEl.parentNode.replaceChild(newEl, oldEl);
            return newEl;
        },
        clean: function() {
            purge(document.body);
        }
    };
} ();
ndm.dom.scheduler = function(G) {
    var E = [],
    H = [],
    J = null,
    A = 0,
    D = 1000,
    B = 8000,
    C = false;
    var F = function() {
        if (A === (H.length - 1)) {
            A = 0;
        } else {++A;
        }
    };
    var I = function(N) {
        var L, K, Q, P, O = function() {
            return false;
        };
        if (N) {
            B = N;
        }
        var M = Math.ceil(B / D);
        for (L = 0; L !== M; L++) {
            H[L] = O;
        }
        P = Math.abs(Math.floor(M / E.length)) + "";
        P = parseInt(P.charAt(P.length - 1), 10);
        for (K = 0; K !== E.length; K++) {
            Q = H.length - (K + 1) * P;
            H[Q] = E[K];
        }
    };
    return {
        start: function(K) {
            if (J !== null) {
                return false;
            }
            I(K);
            J = window.setTimeout(function() {
                if (typeof H[A] === "function") {
                    H[A]();
                }
                F();
                J = window.setTimeout(arguments.callee, D);
            },
            D);
            C = true;
        },
        stop: function() {
            if (J !== null) {
                window.clearInterval(J);
                J = null;
            }
        },
        addSchedule: function(K) {
            E.push(K);
            if (C) {
                I(B);
            }
        }
    };
} ();
ndm.dom.clean = function() {
    var B = ["click", "mouseover", "mouseout", "mousedown", "keypress"];
    var E = document.getElementsByTagName("*");
    var D, C, A;
    for (D = 0, A = E.length; D != A; D++) {
        for (C = 0;
        C != B.length; C++) {
            if ( !! E[D]["on" + B[C]] && typeof E[D]["on" + B[C]] == "function") {
                E[D]["on" + B[C]] = null;
            }
        }
    }
};
ndm.dom.addLoadEvent(function() {
    var A;
    if ( !! document.body) {
        A = document.body.onbeforeonload ||
        function() {
            return;
        };
        document.body.onbeforeunload = function(B) {
            ndm.dom.clean();
            A(B);
        };
    }
    return;
},
function() {
    return ndm.dom.isIE();
},
function() {
    return true;
});
if (typeof Node === "undefined") {
    ndm.dom.nodeType = {
        ELEMENT_NODE: 1,
        ATTRIBUTE_NODE: 2,
        TEXT_NODE: 3,
        COMMENT_NODE: 8,
        DOCUMENT_NODE: 9,
        DOCUMENT_FRAGMENT_NODE: 11
    };
} else {
    ndm.dom.nodeType = Node;
}
tanto.namespace("ndm.dom.events");
ndm.dom.events.guid = 1;
ndm.dom.events.add = function(B, D, C) {
    if (B.addEventListener) {
        B.addEventListener(D, C, false);
    } else {
        if (!C.$$guid) {
            C.$$guid = ndm.dom.events.guid++;
        }
        if (!B.events) {
            B.events = {};
        }
        var A = B.events[D];
        if (!A) {
            A = B.events[D] = {};
            if (B["on" + D]) {
                A[0] = B["on" + D];
            }
            B["on" + D] = ndm.dom.events.handle;
        }
        A[C.$$guid] = C;
    }
};
ndm.dom.events.remove = function(A, C, B) {
    if (A.removeEventListener) {
        A.removeEventListener(C, B, false);
    } else {
        if (A.events && A.events[C] && B.$$guid) {
            delete A.events[C][B.$$guid];
        }
    }
};
ndm.dom.events.handle = function(D) {
    var B, A, C = true;
    D = D || ndm.dom.events.fix(window.event);
    A = this.events[D.type];
    for (B in A) {
        if (A.hasOwnProperty(B)) {
            if (!Object.prototype[B]) {
                this.$$handler = A[B];
                if (this.$$handler(D) === false) {
                    C = false;
                }
            }
        }
    }
    if (this.$$handler) {
        this.$$handler = null;
    }
    return C;
};
ndm.dom.events.fix = function(A) {
    A.preventDefault = function() {
        this.returnValue = false;
    };
    A.stopPropagation = function() {
        this.cancelBubble = true;
    };
    return A;
};
ndm.dom.addLoadEvent(function() {
    if (ndm.dom.isIE()) {
        var C, D, A, B = document.getElementsByTagName("a");
        for (D = 0, A = B.length; D != A; D++) {
            C = B[D];
            if (typeof C.onclick === "function") {
                ndm.aop.addAfter(C, "onclick", function(E) {
                    event.returnValue = E;
                    return E;
                });
            }
        }
    }
});
/*_global_["@namespace"]("ndm.util");
ndm.util = function(A) {
    return {
        parseUri: function(F) {
            var B = {
                strictMode: false,
                key: ["source", "protocol", "authority", "userInfo", "user", "password", "host", "port", "relative", "path", "directory", "file", "query", "anchor"],
                q: {
                    name: "queryKey",
                    parser: /(?=.)&?([^&=]*)=?([^&]*)/g
                },
                parser: {
                    strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
                    loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
                }
            };
            var G = B,
            E = G.parser[G.strictMode ? "strict": "loose"].exec(F);
            for (var C = 0, D = {}; C < 14; C++) {
                D[G.key[C]] = E[C] || "";
            }
            D[G.q.name] = {};
            D[G.key[12]].replace(G.q.parser, function(I, H, J) {
                if (H) {
                    D[G.q.name][H] = J;
                }
            });
            return D;
        }
    };
} ();
_global_["@namespace"]("ndm");
ndm.aop = function() {
    var B = function(F, D, E) {
        var C;
        if (D.exec) {
            C = function(H) {
                return D.exec(H);
            };
        } else {
            if (D.call) {
                C = function(H) {
                    return D.call(this, H);
                };
            }
        }
        if (C) {
            for (var G in F) {
                if (C(G)) {
                    A(F, G, E);
                }
            }
        } else {
            A(F, D, E);
        }
    };
    var A = function(D, F, C) {
        var E = D[F];
        D[F] = C(E);
    };
    return {
        addBefore: function(F, C, E) {
            var D = function(G) {
                return function() {
                    return G.apply(this, E(arguments, G, this));
                };
            };
            B(F, C, D);
        },
        addAfter: function(E, C, F) {
            var D = function(G) {
                return function() {
                    return F(G.apply(this, arguments), arguments, G, this);
                };
            };
            B(E, C, D);
        },
        addAround: function(F, C, E) {
            var D = function(G) {
                return function() {
                    return E(arguments, G, this);
                };
            };
            B(F, C, D);
        }
    };
} ();*/
tanto.namespace("ndm.ajax");
ndm.ajax = function() {
    ndm.callback = {};
    var B = 0,
    G = {},
    F = null,
    C = null,
    E = function(J) {
        var I = document.getElementsByTagName("head")[0],
        H = document.createElement("script");
        F = J;
        H.id = "upload-script" + B;
        H.setAttribute("type", "text/javascript");
        H.setAttribute("src", J);
        if (H.src !== J) {
            H.src = J;
        }
        H.onload = function() {
            return true;
        };
        if (I) {
            I.appendChild(H);
        } else {
            document.write("<scr" + 'ipt type="text/javascript" src="' + J + '"></scr' + "ipt>");
        }
        return H;
    },
    A = function(I, K, H, J) {
        var L, M;
        if ( !! J) {
            for (L in G) {
                if (G.hasOwnProperty(L)) {
                    if (L === I) {
                        K(G[I]);
                        return false;
                    }
                }
            }
        }
        M = ndm.util.parseUri(I).host.replace(/[^a-z]/gi, "") + (++B);
        ndm.callback[M] = function(N) {
            G[I] = N;
            K(N);
        };
        if (H === false) {
            window["ndmcallback" + M] = ndm.callback[M];
            return "ndmcallback" + M;
        }
        return "ndm.callback." + M;
    },
    D = function(H) {
        return H.replace("for(;;);", "");
    };
    return {
        defang: D,
        insertScript: E,
        callbackJSON: function(K, N, J, L, I) {
            var O = I || false,
            H = A(K, N, J, L),
            M;
            if (!H) {
                return;
            }
            M = E(K.replace(/ndm.ajax.callbackHandler/gi, H));
            if (!L && O) {
                if ( !! C) {
                    C.parentNode.removeChild(C);
                }
                C = M;
            }
        },
        fetchJSON: function(H) {
            return null;
        },
        XHR: function() {
            var H = function(K, L, J) {
                if (K && K.readyState === 4 && K.status === 200) {
                    if (L) {
                        L(K);
                    }
                } else {
                    if (K && K.readyState === 4) {
                        if (L && typeof J === "undefined") {
                            L({
                                "error": 1,
                                "status": K.status
                            });
                        } else {
                            if (J) {
                                J({
                                    "error": 1,
                                    "status": K.status
                                });
                            }
                        }
                    }
                }
            };
            var I = function() {
                var K, M, J, L;
                try {
                    K = new XMLHttpRequest();
                    I = function() {
                        return new XMLHttpRequest();
                    };
                } catch(N) {
                    L = ["MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
                    for (M = 0, J = L.length; M < J; ++M) {
                        try {
                            K = new ActiveXObject(L[M]);
                            I = function() {
                                return new ActiveXObject(L[M]);
                            };
                            break;
                        } catch(O) {}
                    }
                }
                return K;
            };
            return function(Q, O, P, K, J, M) {
                var L = I(),
                N;
                L.open(Q, O, true);
                L.setRequestHeader("X-Requested-With", "XMLHttpRequest");
                if (typeof M == "number" && M > 0) {
                    N = setTimeout(function() {
                        L.abort();
                    },
                    M);
                }
                L.onreadystatechange = function() {
                    H(L, P, J);
                };
                L.send(K || null);
                return L;
            };
        } ()
    };
} ();
/*_global_["@namespace"]("ndm.tracking");
ndm.tracking.hbx = function(B) {
    var A = function(F, G, H) {
        ndm.dom.getElementsByClassName(F, G, H);
    };
    var E = function(G, F) {
        document.cookie = G + "=" + F + ";path=/;";
    };
    var C = {};
    var D = function(I, K, F) {
        var G = window.location.href.split(",")[2] || "";
        var M = hbx.mlc || "";
        var H = hbx.pn || "";
        var J = K || (G + "-" + M + "|" + H);
        if (F) {
            J = K + G + "-" + M + "|" + H;
        }
        try {
            if (typeof _hbSet !== "undefined") {
                _hbSet(I, J);
                _hbSend();
            }
        } catch(L) {
            return false;
        }
        return true;
    };
    _global_["@export"](E, "_hbCookie");
    ndm.dom.addLoadEvent(function() {
        ndm.dom.events.add(document, "mouseup", function(J) {
            var H = ndm.dom.getEventTarget(J),
            F,
            G,
            I,
            K;
            if (H.nodeType === ndm.dom.nodeType.ELEMENT_NODE) {
                F = H.getAttribute("rel");
                G = H.getAttribute("href");
                if (/track/.test(F)) {
                    K = F.match(/track-([a-zA-Z0-9-]*)/gi, "$1")[0];
                    if (typeof C[K] === "function") {
                        C[K]();
                    } else {
                        I = K + "|" + encodeURI(window.location) + "-" + encodeURI(G);
                        I = I.replace(/,/gi, "&#44;").replace(/track-/gi, "");
                        _hbSet("cv.c9", I);
                        _hbSend();
                    }
                }
            }
        });
    });
    return {
        pathSectionMap: {},
        addRelTrackHandler: function(F, G) {
            if (typeof G === "function") {
                C[F] = G;
            }
        },
        log: D
    };
} ();*/