百度map api 前段js

window.BMAP_AUTHENTIC_KEY = "148ba719517de5b636685962d779d367"; 
(function() {
    var aa = void 0,
    i = !0,
    n = null,
    o = !1;
    function p() {
        return function() {}
    }
    function ba(a) {
        return function(b) {
            this[a] = b
        }
    }
    function s(a) {
        return function() {
            return this[a]
        }
    }
    function ca(a) {
        return function() {
            return a
        }
    }
    var ea = [];
    function fa(a) {
        return function() {
            return ea[a].apply(this, arguments)
        }
    }
    function ga(a, b) {
        return ea[a] = b
    }
    var ha, t = ha = t || {
        version: "1.3.4"
    };
    t.M = "$BAIDU$";
    window[t.M] = window[t.M] || {};
    t.object = t.object || {};
    t.extend = t.object.extend = function(a, b) {
        for (var c in b) b.hasOwnProperty(c) && (a[c] = b[c]);
        return a
    };
    t.B = t.B || {};
    t.B.Q = function(a) {
        return "string" == typeof a || a instanceof String ? document.getElementById(a) : a && a.nodeName && (1 == a.nodeType || 9 == a.nodeType) ? a: n
    };
    t.Q = t.yc = t.B.Q;
    t.B.J = function(a) {
        a = t.B.Q(a);
        a.style.display = "none";
        return a
    };
    t.J = t.B.J;
    t.lang = t.lang || {};
    t.lang.ue = function(a) {
        return "[object String]" == Object.prototype.toString.call(a)
    };
    t.ue = t.lang.ue;
    t.B.Og = function(a) {
        return t.lang.ue(a) ? document.getElementById(a) : a
    };
    t.Og = t.B.Og;
    t.B.contains = function(a, b) {
        var c = t.B.Og,
        a = c(a),
        b = c(b);
        return a.contains ? a != b && a.contains(b) : !!(a.compareDocumentPosition(b) & 16)
    };
    t.N = t.N || {};
    /msie (\d+\.\d)/i.test(navigator.userAgent) && (t.N.V = t.V = document.documentMode || +RegExp.$1);
    var ia = {
        cellpadding: "cellPadding",
        cellspacing: "cellSpacing",
        colspan: "colSpan",
        rowspan: "rowSpan",
        valign: "vAlign",
        usemap: "useMap",
        frameborder: "frameBorder"
    };
    8 > t.N.V ? (ia["for"] = "htmlFor", ia["class"] = "className") : (ia.htmlFor = "for", ia.className = "class");
    t.B.lw = ia;
    t.B.ov = function(a, b, c) {
        a = t.B.Q(a);
        if ("style" == b) a.style.cssText = c;
        else {
            b = t.B.lw[b] || b;
            a.setAttribute(b, c)
        }
        return a
    };
    t.ov = t.B.ov;
    t.B.pv = function(a, b) {
        var a = t.B.Q(a),
        c;
        for (c in b) t.B.ov(a, c, b[c]);
        return a
    };
    t.pv = t.B.pv;
    t.Lh = t.Lh || {}; (function() {
        var a = RegExp("(^[\\s\\t\\xa0\\u3000]+)|([\\u3000\\xa0\\s\\t]+$)", "g");
        t.Lh.trim = function(b) {
            return ("" + b).replace(a, "")
        }
    })();
    t.trim = t.Lh.trim;
    t.Lh.Oi = function(a, b) {
        var a = "" + a,
        c = Array.prototype.slice.call(arguments, 1),
        d = Object.prototype.toString;
        if (c.length) {
            c = c.length == 1 ? b !== n && /\[object Array\]|\[object Object\]/.test(d.call(b)) ? b: c: c;
            return a.replace(/#\{(.+?)\}/g,
            function(a, b) {
                var g = c[b];
                "[object Function]" == d.call(g) && (g = g(b));
                return "undefined" == typeof g ? "": g
            })
        }
        return a
    };
    t.Oi = t.Lh.Oi;
    t.B.Vb = function(a, b) {
        for (var a = t.B.Q(a), c = a.className.split(/\s+/), d = b.split(/\s+/), e, f = d.length, g, j = 0; j < f; ++j) {
            g = 0;
            for (e = c.length; g < e; ++g) if (c[g] == d[j]) {
                c.splice(g, 1);
                break
            }
        }
        a.className = c.join(" ");
        return a
    };
    t.Vb = t.B.Vb;
    t.B.xu = function(a, b, c) {
        var a = t.B.Q(a),
        d;
        if (a.insertAdjacentHTML) a.insertAdjacentHTML(b, c);
        else {
            d = a.ownerDocument.createRange();
            b = b.toUpperCase();
            if (b == "AFTERBEGIN" || b == "BEFOREEND") {
                d.selectNodeContents(a);
                d.collapse(b == "AFTERBEGIN")
            } else {
                b = b == "BEFOREBEGIN";
                d[b ? "setStartBefore": "setEndAfter"](a);
                d.collapse(b)
            }
            d.insertNode(d.createContextualFragment(c))
        }
        return a
    };
    t.xu = t.B.xu;
    t.B.show = function(a) {
        a = t.B.Q(a);
        a.style.display = "";
        return a
    };
    t.show = t.B.show;
    t.B.Wt = function(a) {
        a = t.B.Q(a);
        return a.nodeType == 9 ? a: a.ownerDocument || a.document
    };
    t.B.ab = function(a, b) {
        for (var a = t.B.Q(a), c = b.split(/\s+/), d = a.className, e = " " + d + " ", f = 0, g = c.length; f < g; f++) e.indexOf(" " + c[f] + " ") < 0 && (d = d + (" " + c[f]));
        a.className = d;
        return a
    };
    t.ab = t.B.ab;
    t.B.Bs = t.B.Bs || {};
    t.B.mi = t.B.mi || [];
    t.B.mi.filter = function(a, b, c) {
        for (var d = 0,
        e = t.B.mi,
        f; f = e[d]; d++) if (f = f[c]) b = f(a, b);
        return b
    };
    t.Lh.VB = function(a) {
        return a.indexOf("-") < 0 && a.indexOf("_") < 0 ? a: a.replace(/[-_][^-_]/g,
        function(a) {
            return a.charAt(1).toUpperCase()
        })
    };
    t.B.RN = function(a, b) {
        t.B.ru(a, b) ? t.B.Vb(a, b) : t.B.ab(a, b)
    };
    t.B.ru = function(a) {
        if (arguments.length <= 0 || typeof a === "function") return this;
        if (this.size() <= 0) return o;
        var a = a.replace(/^\s+/g, "").replace(/\s+$/g, "").replace(/\s+/g, " "),
        b = a.split(" "),
        c;
        t.forEach(this,
        function(a) {
            for (var a = a.className,
            e = 0; e < b.length; e++) if (!~ (" " + a + " ").indexOf(" " + b[e] + " ")) {
                c = o;
                return
            }
            c !== o && (c = i)
        });
        return c
    };
    t.B.zg = function(a, b) {
        var c = t.B,
        a = c.Q(a),
        b = t.Lh.VB(b),
        d = a.style[b];
        if (!d) var e = c.Bs[b],
        d = a.currentStyle || (t.N.V ? a.style: getComputedStyle(a, n)),
        d = e && e.get ? e.get(a, d) : d[e || b];
        if (e = c.mi) d = e.filter(b, d, "get");
        return d
    };
    t.zg = t.B.zg;
    /opera\/(\d+\.\d)/i.test(navigator.userAgent) && (t.N.opera = +RegExp.$1);
    t.N.xA = /webkit/i.test(navigator.userAgent);
    t.N.nJ = /gecko/i.test(navigator.userAgent) && !/like gecko/i.test(navigator.userAgent);
    t.N.Du = "CSS1Compat" == document.compatMode;
    t.B.da = function(a) {
        var a = t.B.Q(a),
        b = t.B.Wt(a),
        c = t.N,
        d = t.B.zg;
        c.nJ > 0 && b.getBoxObjectFor && d(a, "position");
        var e = {
            left: 0,
            top: 0
        },
        f;
        if (a == (c.V && !c.Du ? b.body: b.documentElement)) return e;
        if (a.getBoundingClientRect) {
            a = a.getBoundingClientRect();
            e.left = Math.floor(a.left) + Math.max(b.documentElement.scrollLeft, b.body.scrollLeft);
            e.top = Math.floor(a.top) + Math.max(b.documentElement.scrollTop, b.body.scrollTop);
            e.left = e.left - b.documentElement.clientLeft;
            e.top = e.top - b.documentElement.clientTop;
            a = b.body;
            b = parseInt(d(a, "borderLeftWidth"));
            d = parseInt(d(a, "borderTopWidth"));
            if (c.V && !c.Du) {
                e.left = e.left - (isNaN(b) ? 2 : b);
                e.top = e.top - (isNaN(d) ? 2 : d)
            }
        } else {
            f = a;
            do {
                e.left = e.left + f.offsetLeft;
                e.top = e.top + f.offsetTop;
                if (c.xA > 0 && d(f, "position") == "fixed") {
                    e.left = e.left + b.body.scrollLeft;
                    e.top = e.top + b.body.scrollTop;
                    break
                }
                f = f.offsetParent
            } while ( f && f != a );
            if (c.opera > 0 || c.xA > 0 && d(a, "position") == "absolute") e.top = e.top - b.body.offsetTop;
            for (f = a.offsetParent; f && f != b.body;) {
                e.left = e.left - f.scrollLeft;
                if (!c.opera || f.tagName != "TR") e.top = e.top - f.scrollTop;
                f = f.offsetParent
            }
        }
        return e
    };
    /firefox\/(\d+\.\d)/i.test(navigator.userAgent) && (t.N.Te = +RegExp.$1);
    var ja = navigator.userAgent;
    /(\d+\.\d)?(?:\.\d)?\s+safari\/?(\d+\.\d+)?/i.test(ja) && !/chrome/i.test(ja) && (t.N.sK = +(RegExp.$1 || RegExp.$2));
    /chrome\/(\d+\.\d)/i.test(navigator.userAgent) && (t.N.Ry = +RegExp.$1);
    t.Qb = t.Qb || {};
    t.Qb.Fc = function(a, b) {
        var c, d, e = a.length;
        if ("function" == typeof b) for (d = 0; d < e; d++) {
            c = a[d];
            c = b.call(a, c, d);
            if (c === o) break
        }
        return a
    };
    t.Fc = t.Qb.Fc;
    t.lang.M = function() {
        return "TANGRAM__" + (window[t.M]._counter++).toString(36)
    };
    window[t.M]._counter = window[t.M]._counter || 1;
    window[t.M]._instances = window[t.M]._instances || {};
    t.lang.Sm = function(a) {
        return "[object Function]" == Object.prototype.toString.call(a)
    };
    t.lang.ra = function(a) {
        this.M = a || t.lang.M();
        window[t.M]._instances[this.M] = this
    };
    window[t.M]._instances = window[t.M]._instances || {};
    t.lang.ra.prototype.Hf = fa(1);
    t.lang.ra.prototype.toString = function() {
        return "[object " + (this.gD || "Object") + "]"
    };
    t.lang.Jq = function(a, b) {
        this.type = a;
        this.returnValue = i;
        this.target = b || n;
        this.currentTarget = n
    };
    t.lang.ra.prototype.addEventListener = function(a, b, c) {
        if (t.lang.Sm(b)) { ! this.cg && (this.cg = {});
            var d = this.cg,
            e;
            if (typeof c == "string" && c) {
                if (/[^\w\-]/.test(c)) throw "nonstandard key:" + c;
                e = b.cA = c
            }
            a.indexOf("on") != 0 && (a = "on" + a);
            typeof d[a] != "object" && (d[a] = {});
            e = e || t.lang.M();
            b.cA = e;
            d[a][e] = b
        }
    };
    t.lang.ra.prototype.removeEventListener = function(a, b) {
        if (t.lang.Sm(b)) b = b.cA;
        else if (!t.lang.ue(b)) return; ! this.cg && (this.cg = {});
        a.indexOf("on") != 0 && (a = "on" + a);
        var c = this.cg;
        c[a] && c[a][b] && delete c[a][b]
    };
    t.lang.ra.prototype.dispatchEvent = function(a, b) {
        t.lang.ue(a) && (a = new t.lang.Jq(a)); ! this.cg && (this.cg = {});
        var b = b || {},
        c;
        for (c in b) a[c] = b[c];
        var d = this.cg,
        e = a.type;
        a.target = a.target || this;
        a.currentTarget = this;
        e.indexOf("on") != 0 && (e = "on" + e);
        t.lang.Sm(this[e]) && this[e].apply(this, arguments);
        if (typeof d[e] == "object") for (c in d[e]) d[e][c].apply(this, arguments);
        return a.returnValue
    };
    t.lang.ja = function(a, b, c) {
        var d, e, f = a.prototype;
        e = new Function;
        e.prototype = b.prototype;
        e = a.prototype = new e;
        for (d in f) e[d] = f[d];
        a.prototype.constructor = a;
        a.gL = b.prototype;
        if ("string" == typeof c) e.gD = c
    };
    t.ja = t.lang.ja;
    t.lang.Gc = function(a) {
        return window[t.M]._instances[a] || n
    };
    t.platform = t.platform || {};
    t.platform.rJ = /macintosh/i.test(navigator.userAgent);
    t.platform.yA = /windows/i.test(navigator.userAgent);
    t.platform.wJ = /x11/i.test(navigator.userAgent);
    t.platform.vk = /android/i.test(navigator.userAgent);
    /android (\d+\.\d)/i.test(navigator.userAgent) && (t.platform.Cy = t.Cy = RegExp.$1);
    t.platform.pJ = /ipad/i.test(navigator.userAgent);
    t.platform.qJ = /iphone/i.test(navigator.userAgent);
    function y(a, b) {
        a.domEvent = b = window.event || b;
        a.clientX = b.clientX || b.pageX;
        a.clientY = b.clientY || b.pageY;
        a.offsetX = b.offsetX || b.layerX;
        a.offsetY = b.offsetY || b.layerY;
        a.screenX = b.screenX;
        a.screenY = b.screenY;
        a.ctrlKey = b.ctrlKey || b.metaKey;
        a.shiftKey = b.shiftKey;
        a.altKey = b.altKey;
        if (b.touches) {
            a.touches = [];
            for (var c = 0; c < b.touches.length; c++) a.touches.push({
                clientX: b.touches[c].clientX,
                clientY: b.touches[c].clientY,
                screenX: b.touches[c].screenX,
                screenY: b.touches[c].screenY,
                pageX: b.touches[c].pageX,
                pageY: b.touches[c].pageY,
                target: b.touches[c].target,
                identifier: b.touches[c].identifier
            })
        }
        if (b.changedTouches) {
            a.changedTouches = [];
            for (c = 0; c < b.changedTouches.length; c++) a.changedTouches.push({
                clientX: b.changedTouches[c].clientX,
                clientY: b.changedTouches[c].clientY,
                screenX: b.changedTouches[c].screenX,
                screenY: b.changedTouches[c].screenY,
                pageX: b.changedTouches[c].pageX,
                pageY: b.changedTouches[c].pageY,
                target: b.changedTouches[c].target,
                identifier: b.changedTouches[c].identifier
            })
        }
        if (b.targetTouches) {
            a.targetTouches = [];
            for (c = 0; c < b.targetTouches.length; c++) a.targetTouches.push({
                clientX: b.targetTouches[c].clientX,
                clientY: b.targetTouches[c].clientY,
                screenX: b.targetTouches[c].screenX,
                screenY: b.targetTouches[c].screenY,
                pageX: b.targetTouches[c].pageX,
                pageY: b.targetTouches[c].pageY,
                target: b.targetTouches[c].target,
                identifier: b.targetTouches[c].identifier
            })
        }
        a.rotation = b.rotation;
        a.scale = b.scale;
        return a
    }
    t.lang.mp = function(a) {
        var b = window[t.M];
        b.NE && delete b.NE[a]
    };
    t.event = {};
    t.D = t.event.D = function(a, b, c) {
        if (! (a = t.Q(a))) return a;
        b = b.replace(/^on/, "");
        a.addEventListener ? a.addEventListener(b, c, o) : a.attachEvent && a.attachEvent("on" + b, c);
        return a
    };
    t.gd = t.event.gd = function(a, b, c) {
        if (! (a = t.Q(a))) return a;
        b = b.replace(/^on/, "");
        a.removeEventListener ? a.removeEventListener(b, c, o) : a.detachEvent && a.detachEvent("on" + b, c);
        return a
    };
    t.B.ru = function(a, b) {
        if (!a || !a.className || typeof a.className != "string") return o;
        var c = -1;
        try {
            c = a.className == b || a.className.search(RegExp("(\\s|^)" + b + "(\\s|$)"))
        } catch(d) {
            return o
        }
        return c > -1
    };
    t.Ht = function() {
        function a(a) {
            document.addEventListener && (this.element = a, this.zz = this.Zi ? "touchstart": "mousedown", this.Kt = this.Zi ? "touchmove": "mousemove", this.Jt = this.Zi ? "touchend": "mouseup", this.Pu = o, this.KB = this.JB = 0, this.element.addEventListener(this.zz, this, o), ha.D(this.element, "mousedown", p()), this.handleEvent(n))
        }
        a.prototype = {
            Zi: "ontouchstart" in window || "createTouch" in document,
            start: function(a) {
                A(a);
                this.Pu = o;
                this.JB = this.Zi ? a.touches[0].clientX: a.clientX;
                this.KB = this.Zi ? a.touches[0].clientY: a.clientY;
                this.element.addEventListener(this.Kt, this, o);
                this.element.addEventListener(this.Jt, this, o)
            },
            move: function(a) {
                ka(a);
                var c = this.Zi ? a.touches[0].clientY: a.clientY;
                if (10 < Math.abs((this.Zi ? a.touches[0].clientX: a.clientX) - this.JB) || 10 < Math.abs(c - this.KB)) this.Pu = i
            },
            end: function(a) {
                ka(a);
                this.Pu || (a = document.createEvent("Event"), a.initEvent("tap", o, i), this.element.dispatchEvent(a));
                this.element.removeEventListener(this.Kt, this, o);
                this.element.removeEventListener(this.Jt, this, o)
            },
            handleEvent: function(a) {
                if (a) switch (a.type) {
                case this.zz:
                    this.start(a);
                    break;
                case this.Kt:
                    this.move(a);
                    break;
                case this.Jt:
                    this.end(a)
                }
            }
        };
        return function(b) {
            return new a(b)
        }
    } ();
    var B = window.BMap || {};
    B.version = "2.0";
    0 <= B.version.indexOf("#") && (B.version = "2.0");
    B.Xl = [];
    B.xd = function(a) {
        this.Xl.push(a)
    };
    B.hs = [];
    B.Vu = function(a) {
        this.hs.push(a)
    };
    B.yG = B.apiLoad || p();
    var la = window.BMAP_AUTHENTIC_KEY;
    window.BMAP_AUTHENTIC_KEY = n;
    var ma = window.BMap_loadScriptTime,
    na = (new Date).getTime(),
    oa = n,
    pa = i,
    qa = n;
    function ra(a, b) {
        if (a = t.Q(a)) {
            var c = this;
            t.lang.ra.call(c);
            b = b || {};
            c.G = {
                Ws: 200,
                Hb: i,
                sp: o,
                Bt: i,
                ym: o,
                Am: o,
                Et: i,
                zm: i,
                qp: i,
                hk: b.enable3DBuilding !== o,
                Vc: 25,
                KL: 240,
                mG: 450,
                nb: C.nb,
                qc: C.qc,
                Op: !!b.Op,
                tc: b.minZoom || 1,
                Zc: b.maxZoom || 18,
                Db: b.mapType || sa,
                GN: o,
                rp: o,
                ut: 500,
                GM: b.enableHighResolution !== o,
                up: b.enableMapClick !== o,
                devicePixelRatio: b.devicePixelRatio || window.devicePixelRatio || 1,
                hC: b.vectorMapLevel || 3,
                rc: b.mapStyle || n,
                EJ: b.logoControl === o ? o: i,
                GG: ["chrome"]
            };
            c.G.rc && (this.kA(c.G.rc.controls), this.lA(c.G.rc.geotableId));
            c.G.rc && c.G.rc.styleId && c.Yz(c.G.rc.styleId);
            c.G.Gf = {
                dark: {
                    backColor: "#2D2D2D",
                    textColor: "#bfbfbf",
                    iconUrl: "dicons"
                },
                normal: {
                    backColor: "#F3F1EC",
                    textColor: "#c61b1b",
                    iconUrl: "icons"
                },
                light: {
                    backColor: "#EBF8FC",
                    textColor: "#017fb4",
                    iconUrl: "licons"
                }
            };
            b.enableAutoResize && (c.G.qp = b.enableAutoResize);
            t.platform.vk && 1.5 < window.devicePixelRatio && (c.G.devicePixelRatio = 1.5);
            var d = c.G.GG;
            if (F()) for (var e = 0,
            f = d.length; e < f; e++) if (t.N[d[e]]) {
                c.G.devicePixelRatio = 1;
                break
            }
            c.ya = a;
            c.ws(a);
            a.unselectable = "on";
            a.innerHTML = "";
            a.appendChild(c.va());
            b.size && this.Oc(b.size);
            d = c.xb();
            c.width = d.width;
            c.height = d.height;
            c.offsetX = 0;
            c.offsetY = 0;
            c.platform = a.firstChild;
            c.Nd = c.platform.firstChild;
            c.Nd.style.width = c.width + "px";
            c.Nd.style.height = c.height + "px";
            c.Rc = {};
            c.Pe = new G(0, 0);
            c.Mb = new G(0, 0);
            c.oa = 1;
            c.Sb = 0;
            c.gt = n;
            c.ft = n;
            c.wb = "";
            c.cp = "";
            c.wf = {};
            c.wf.custom = {};
            c.za = 0;
            c.S = new ta(a, {
                ik: "api"
            });
            c.S.J();
            c.S.sv(c);
            b = b || {};
            d = c.Db = c.G.Db;
            c.bd = d.Vi();
            d === ua && va(5002); (d === wa || d === xa) && va(5003);
            d = c.G;
            d.cC = b.minZoom;
            d.bC = b.maxZoom;
            c.gr();
            c.F = {
                Jb: o,
                lb: 0,
                Wm: 0,
                EA: 0,
                jN: 0,
                Qs: o,
                ev: -1,
                Ed: []
            };
            c.platform.style.cursor = c.G.nb;
            for (e = 0; e < B.Xl.length; e++) B.Xl[e](c);
            c.F.ev = e;
            c.O();
            H.load("map",
            function() {
                c.Zb()
            });
            c.G.up && (setTimeout(function() {
                va("load_mapclick")
            },
            1E3), H.load("mapclick",
            function() {
                window.MPC_Mgr = new ya(c)
            },
            i));
            Aa() && H.load("oppc",
            function() {
                c.Zq()
            });
            F() && H.load("opmb",
            function() {
                c.Zq()
            });
            a = n;
            c.Gs = []
        }
    }
    t.lang.ja(ra, t.lang.ra, "Map");
    t.extend(ra.prototype, {
        va: function() {
            var a = J("div"),
            b = a.style;
            b.overflow = "visible";
            b.position = "absolute";
            b.zIndex = "0";
            b.top = b.left = "0px";
            var b = J("div", {
                "class": "BMap_mask"
            }),
            c = b.style;
            c.position = "absolute";
            c.top = c.left = "0px";
            c.zIndex = "9";
            c.overflow = "hidden";
            c.WebkitUserSelect = "none";
            a.appendChild(b);
            return a
        },
        ws: function(a) {
            var b = a.style;
            b.overflow = "hidden";
            "absolute" != Ba(a).position && (b.position = "relative", b.zIndex = 0);
            b.backgroundColor = "#F3F1EC";
            b.color = "#000";
            b.textAlign = "left"
        },
        O: function() {
            var a = this;
            a.dm = function() {
                var b = a.xb();
                if (a.width != b.width || a.height != b.height) {
                    var c = new K(a.width, a.height),
                    d = new L("onbeforeresize");
                    d.size = c;
                    a.dispatchEvent(d);
                    a.Zg((b.width - a.width) / 2, (b.height - a.height) / 2);
                    a.Nd.style.width = (a.width = b.width) + "px";
                    a.Nd.style.height = (a.height = b.height) + "px";
                    c = new L("onresize");
                    c.size = b;
                    a.dispatchEvent(c)
                }
            };
            a.G.qp && (a.F.gm = setInterval(a.dm, 80))
        },
        Zg: function(a, b, c, d) {
            var e = this.ha().Ib(this.T()),
            f = this.bd,
            g = i;
            c && G.oA(c) && (this.Pe = new G(c.lng, c.lat), g = o);
            if (c = c && d ? f.ej(c, this.wb) : this.Mb) if (this.Mb = new G(c.lng + a * e, c.lat - b * e), (a = f.yh(this.Mb, this.wb)) && g) this.Pe = a
        },
        lf: function(a, b) {
            if (Ca(a) && (a = this.Jj(a).zoom, a != this.oa)) {
                this.Sb = this.oa;
                this.oa = a;
                var c;
                b ? c = b: this.We() && (c = this.We().da());
                c && (c = this.ob(c, this.Sb), this.Zg(this.width / 2 - c.x, this.height / 2 - c.y, this.Va(c, this.Sb), i));
                this.dispatchEvent(new L("onzoomstart"));
                this.dispatchEvent(new L("onzoomstartcode"))
            }
        },
        Pc: function(a) {
            this.lf(a)
        },
        Mv: function(a) {
            this.lf(this.oa + 1, a)
        },
        Nv: function(a) {
            this.lf(this.oa - 1, a)
        },
        ye: function(a) {
            a instanceof G && (this.Mb = this.bd.ej(a, this.wb), this.Pe = G.oA(a) ? new G(a.lng, a.lat) : this.bd.yh(this.Mb, this.wb))
        },
        xe: function(a, b) {
            a = Math.round(a) || 0;
            b = Math.round(b) || 0;
            this.Zg( - a, -b)
        },
        To: function(a) {
            a && Da(a.Wd) && (a.Wd(this), this.dispatchEvent(new L("onaddcontrol", a)))
        },
        rB: function(a) {
            a && Da(a.remove) && (a.remove(), this.dispatchEvent(new L("onremovecontrol", a)))
        },
        $j: function(a) {
            a && Da(a.la) && (a.la(this), this.dispatchEvent(new L("onaddcontextmenu", a)))
        },
        Dk: function(a) {
            a && Da(a.remove) && (this.dispatchEvent(new L("onremovecontextmenu", a)), a.remove())
        },
        Xa: function(a) {
            a && Da(a.Wd) && (a.Wd(this), this.dispatchEvent(new L("onaddoverlay", a)))
        },
        cd: function(a) {
            a && Da(a.remove) && (a.remove(), this.dispatchEvent(new L("onremoveoverlay", a)))
        },
        Ty: function() {
            this.dispatchEvent(new L("onclearoverlays"))
        },
        Ne: function(a) {
            a && this.dispatchEvent(new L("onaddtilelayer", a))
        },
        hf: function(a) {
            a && this.dispatchEvent(new L("onremovetilelayer", a))
        },
        Eg: function(a) {
            if (this.Db !== a) {
                var b = new L("onsetmaptype");
                b.BN = this.Db;
                this.Db = this.G.Db = a;
                this.bd = this.Db.Vi();
                this.Zg(0, 0, this.Da(), i);
                this.gr();
                var c = this.Jj(this.T()).zoom;
                this.lf(c);
                this.dispatchEvent(b);
                b = new L("onmaptypechange");
                b.oa = c;
                b.Db = a;
                this.dispatchEvent(b); (a === wa || a === xa) && va(5003)
            }
        },
        ze: function(a) {
            var b = this;
            if (a instanceof G) b.ye(a, {
                noAnimation: i
            });
            else if (Ea(a)) if (b.Db == ua) {
                var c = C.Ts[a];
                c && (pt = c.m, b.ze(pt))
            } else {
                var d = this.gx();
                d.uv(function(c) {
                    0 == d.Wi() && 2 == d.pa.result.type && (b.ze(c.oh(0).point), ua.lh(a) && b.rv(a))
                });
                d.search(a, {
                    log: "center"
                })
            }
        },
        be: function(a, b) {
            qa = F() ? Fa.yj.lm(101) : Fa.yj.lm(1);
            qa.Bv();
            qa.dc("script_loaded", na - ma);
            qa.dc("centerAndZoom");
            var c = this;
            if (Ea(a)) if (c.Db == ua) {
                var d = C.Ts[a];
                d && (pt = d.m, c.be(pt, b))
            } else {
                var e = c.gx();
                e.uv(function(d) {
                    if (0 == e.Wi() && 2 == e.pa.result.type) {
                        var d = d.oh(0).point,
                        f = b || N.Qt(e.pa.content.level, c);
                        c.be(d, f);
                        ua.lh(a) && c.rv(a)
                    }
                });
                e.search(a, {
                    log: "center"
                })
            } else if (a instanceof G && b) {
                b = c.Jj(b).zoom;
                c.Sb = c.oa || b;
                c.oa = b;
                c.Pe = new G(a.lng, a.lat);
                c.Mb = c.bd.ej(c.Pe, c.wb);
                c.gt = c.gt || c.oa;
                c.ft = c.ft || c.Pe;
                var d = new L("onload"),
                f = new L("onloadcode");
                d.point = new G(a.lng, a.lat);
                d.pixel = c.ob(c.Pe, c.oa);
                d.zoom = b;
                c.loaded || (c.loaded = i, c.dispatchEvent(d), oa || (oa = Ga()));
                c.dispatchEvent(f);
                c.dispatchEvent(new L("onmoveend"));
                c.Sb != c.oa && c.dispatchEvent(new L("onzoomend"));
                c.G.hk && c.hk()
            }
        },
        gx: function() {
            this.F.IA || (this.F.IA = new Ia(1));
            return this.F.IA
        },
        reset: function() {
            this.be(this.ft, this.gt, i)
        },
        enableDragging: function() {
            this.G.Hb = i
        },
        disableDragging: function() {
            this.G.Hb = o
        },
        enableInertialDragging: function() {
            this.G.rp = i
        },
        disableInertialDragging: function() {
            this.G.rp = o
        },
        enableScrollWheelZoom: function() {
            this.G.Am = i
        },
        disableScrollWheelZoom: function() {
            this.G.Am = o
        },
        enableContinuousZoom: function() {
            this.G.ym = i
        },
        disableContinuousZoom: function() {
            this.G.ym = o
        },
        enableDoubleClickZoom: function() {
            this.G.Bt = i
        },
        disableDoubleClickZoom: function() {
            this.G.Bt = o
        },
        enableKeyboard: function() {
            this.G.sp = i
        },
        disableKeyboard: function() {
            this.G.sp = o
        },
        enablePinchToZoom: function() {
            this.G.zm = i
        },
        disablePinchToZoom: function() {
            this.G.zm = o
        },
        enableAutoResize: function() {
            this.G.qp = i;
            this.dm();
            this.F.gm || (this.F.gm = setInterval(this.dm, 80))
        },
        disableAutoResize: function() {
            this.G.qp = o;
            this.F.gm && (clearInterval(this.F.gm), this.F.gm = n)
        },
        hk: function() {
            this.G.hk = i;
            this.Cj || (this.Cj = new Ja({
                Cz: i
            }), this.Ne(this.Cj))
        },
        zH: function() {
            this.G.hk = o;
            this.Cj && (this.hf(this.Cj), this.Cj = n, delete this.Cj)
        },
        xb: function() {
            return this.rm && this.rm instanceof K ? new K(this.rm.width, this.rm.height) : new K(this.ya.clientWidth, this.ya.clientHeight)
        },
        Oc: function(a) {
            a && a instanceof K ? (this.rm = a, this.ya.style.width = a.width + "px", this.ya.style.height = a.height + "px") : this.rm = n
        },
        Da: s("Pe"),
        T: s("oa"),
        WG: function() {
            this.dm()
        },
        Jj: function(a) {
            var b = this.G.tc,
            c = this.G.Zc,
            d = o;
            a < b && (d = i, a = b);
            a > c && (d = i, a = c);
            return {
                zoom: a,
                Lt: d
            }
        },
        Ca: s("ya"),
        ob: function(a, b) {
            b = b || this.T();
            return this.bd.ob(a, b, this.Mb, this.xb(), this.wb)
        },
        Va: function(a, b) {
            b = b || this.T();
            return this.bd.Va(a, b, this.Mb, this.xb(), this.wb)
        },
        df: function(a, b) {
            if (a) {
                var c = this.ob(new G(a.lng, a.lat), b);
                c.x -= this.offsetX;
                c.y -= this.offsetY;
                return c
            }
        },
        jB: function(a, b) {
            if (a) {
                var c = new O(a.x, a.y);
                c.x += this.offsetX;
                c.y += this.offsetY;
                return this.Va(c, b)
            }
        },
        pointToPixelFor3D: function(a, b) {
            var c = map.wb;
            this.Db == ua && c && Ka.Yy(a, this, b)
        },
        wN: function(a, b) {
            var c = map.wb;
            this.Db == ua && c && Ka.Xy(a, this, b)
        },
        xN: function(a, b) {
            var c = this,
            d = map.wb;
            c.Db == ua && d && Ka.Yy(a, c,
            function(a) {
                a.x -= c.offsetX;
                a.y -= c.offsetY;
                b && b(a)
            })
        },
        vN: function(a, b) {
            var c = map.wb;
            this.Db == ua && c && (a.x += this.offsetX, a.y += this.offsetY, Ka.Xy(a, this, b))
        },
        xg: function(a) {
            if (!this.Au()) return new La;
            var b = a || {},
            a = b.margins || [0, 0, 0, 0],
            c = b.zoom || n,
            b = this.Va({
                x: a[3],
                y: this.height - a[2]
            },
            c),
            a = this.Va({
                x: this.width - a[1],
                y: a[0]
            },
            c);
            return new La(b, a)
        },
        Au: function() {
            return !! this.loaded
        },
        gE: function(a, b) {
            for (var c = this.ha(), d = b.margins || [10, 10, 10, 10], e = b.zoomFactor || 0, f = d[1] + d[3], d = d[0] + d[2], g = c.lk(), j = c = c.Ti(); j >= g; j--) {
                var k = this.ha().Ib(j);
                if (a.Iv().lng / k < this.width - f && a.Iv().lat / k < this.height - d) break
            }
            j += e;
            j < g && (j = g);
            j > c && (j = c);
            return j
        },
        Ip: function(a, b) {
            var c = {
                center: this.Da(),
                zoom: this.T()
            };
            if (!a || !a instanceof La && 0 == a.length || a instanceof La && a.Bg()) return c;
            var d = [];
            a instanceof La ? (d.push(a.se()), d.push(a.te())) : d = a.slice(0);
            for (var b = b || {},
            e = [], f = 0, g = d.length; f < g; f++) e.push(this.bd.ej(d[f], this.wb));
            d = new La;
            for (f = e.length - 1; 0 <= f; f--) d.extend(e[f]);
            if (d.Bg()) return c;
            c = d.Da();
            e = this.gE(d, b);
            b.margins && (d = b.margins, f = (d[1] - d[3]) / 2, d = (d[0] - d[2]) / 2, g = this.ha().Ib(e), b.offset && (f = b.offset.width, d = b.offset.height), c.lng += g * f, c.lat += g * d);
            c = this.bd.yh(c, this.wb);
            return {
                center: c,
                zoom: e
            }
        },
        Lk: function(a, b) {
            var c;
            c = a && a.center ? a: this.Ip(a, b);
            var b = b || {},
            d = b.delay || 200;
            if (c.zoom == this.oa && b.enableAnimation != o) {
                var e = this;
                setTimeout(function() {
                    e.ye(c.center, {
                        duration: 210
                    })
                },
                d)
            } else this.be(c.center, c.zoom)
        },
        Ye: s("Rc"),
        We: function() {
            return this.F.La && this.F.La.Aa() ? this.F.La: n
        },
        getDistance: function(a, b) {
            if (a && b) {
                var c = 0,
                c = P.Vt(a, b);
                if (c == n || c == aa) c = 0;
                return c
            }
        },
        gu: function() {
            var a = [],
            b = this.ga,
            c = this.ld;
            if (b) for (var d in b) b[d] instanceof Q && a.push(b[d]);
            if (c) {
                d = 0;
                for (b = c.length; d < b; d++) a.push(c[d])
            }
            return a
        },
        ha: s("Db"),
        Zq: function() {
            for (var a = this.F.ev; a < B.Xl.length; a++) B.Xl[a](this);
            this.F.ev = a
        },
        rv: function(a) {
            this.wb = ua.lh(a);
            this.cp = ua.Iz(this.wb);
            this.Db == ua && this.bd instanceof Ma && (this.bd.at = this.wb)
        },
        setDefaultCursor: function(a) {
            this.G.nb = a;
            this.platform && (this.platform.style.cursor = this.G.nb)
        },
        getDefaultCursor: function() {
            return this.G.nb
        },
        setDraggingCursor: function(a) {
            this.G.qc = a
        },
        getDraggingCursor: function() {
            return this.G.qc
        },
        uh: ca(o),
        Wo: function(a, b) {
            b ? this.wf[b] || (this.wf[b] = {}) : b = "custom";
            a.tag = b;
            a instanceof Na && (this.wf[b][a.M] = a, a.la(this));
            var c = this;
            H.load("hotspot",
            function() {
                c.Zq()
            })
        },
        hK: function(a, b) {
            b || (b = "custom");
            this.wf[b][a.M] && delete this.wf[b][a.M]
        },
        Ai: function(a) {
            a || (a = "custom");
            this.wf[a] = {}
        },
        gr: function() {
            var a = this.uh() ? this.Db.k.cJ: this.Db.lk(),
            b = this.uh() ? this.Db.k.bJ: this.Db.Ti(),
            c = this.G;
            c.tc = c.cC || a;
            c.Zc = c.bC || b;
            c.tc < a && (c.tc = a);
            c.Zc > b && (c.Zc = b)
        },
        setMinZoom: function(a) {
            a > this.G.Zc && (a = this.G.Zc);
            this.G.cC = a;
            this.my()
        },
        setMaxZoom: function(a) {
            a < this.G.tc && (a = this.G.tc);
            this.G.bC = a;
            this.my()
        },
        my: function() {
            this.gr();
            var a = this.G;
            this.oa < a.tc ? this.Pc(a.tc) : this.oa > a.Zc && this.Pc(a.Zc);
            var b = new L("onzoomspanchange");
            b.tc = a.tc;
            b.Zc = a.Zc;
            this.dispatchEvent(b)
        },
        bN: s("Gs"),
        getKey: function() {
            return la
        },
        BB: function(a) {
            if (a) {
                if (a.styleId) this.Yz(a.styleId);
                else {
                    this.G.rc = a;
                    this.dispatchEvent(new L("onsetcustomstyles", a));
                    this.kA(a.controls);
                    this.lA(this.G.rc.geotableId);
                    var b = {
                        style: a.style
                    };
                    a.features && 0 < a.features.length && (b.features = i);
                    va(5050, b)
                }
                a.style && (a = this.G.Gf[a.style] ? this.G.Gf[a.style].backColor: this.G.Gf.normal.backColor, this.Ca().style.backgroundColor = a)
            }
        },
        Yz: function(a) {
            var b = this;
            Oa("http://api.map.baidu.com/style/poi/personalize?method=get&ak=" + la + "&id=" + a,
            function(a) {
                if (a && a.content && 0 < a.content.length) {
                    var a = a.content[0],
                    d = {};
                    a.features && 0 < a.features.length && (d.features = a.features);
                    a.controllers && 0 < a.controllers.length && (d.controls = a.controllers);
                    a.style && "" != a.style && (d.style = a.style);
                    a.geotable_id && "" != a.geotable_id && (d.geotableId = a.geotable_id);
                    setTimeout(function() {
                        b.BB(d)
                    },
                    200)
                }
            })
        },
        kA: function(a) {
            this.controls || (this.controls = {
                navigationControl: new Pa,
                scaleControl: new Qa,
                overviewMapControl: new Ra,
                mapTypeControl: new Sa
            });
            var b = this,
            c;
            for (c in this.controls) b.rB(b.controls[c]);
            a = a || [];
            t.Qb.Fc(a,
            function(a) {
                b.To(b.controls[a])
            })
        },
        lA: function(a) {
            a ? this.pm && this.pm.me == a || (this.hf(this.pm), this.pm = new Ta({
                geotableId: a
            }), this.Ne(this.pm)) : this.hf(this.pm)
        },
        Kb: function() {
            var a = this.T() >= this.G.hC && this.ha() == sa && 18 >= this.T(),
            b = o;
            try {
                document.createElement("canvas").getContext("2d"),
                b = i
            } catch(c) {
                b = o
            }
            return a && b
        },
        getCurrentCity: function() {
            return {
                name: this.fk,
                code: this.Ns
            }
        },
        getPanorama: s("S"),
        setPanorama: function(a) {
            this.S = a;
            this.S.sv(this)
        }
    });
    function va(a, b) {
        if (a) {
            var b = b || {},
            c = "",
            d;
            for (d in b) c = c + "&" + d + "=" + encodeURIComponent(b[d]);
            var e = function(a) {
                a && (Ua = i, setTimeout(function() {
                    Va.src = "http://api.map.baidu.com/images/blank.gif?" + a.src
                },
                50))
            },
            f = function() {
                var a = Wa.shift();
                a && e(a)
            };
            d = (1E8 * Math.random()).toFixed(0);
            Ua ? Wa.push({
                src: "product=jsapi&v=" + B.version + "&t=" + d + "&code=" + a + c
            }) : e({
                src: "product=jsapi&v=" + B.version + "&t=" + d + "&code=" + a + c
            });
            Xa || (t.D(Va, "load",
            function() {
                Ua = o;
                f()
            }), t.D(Va, "error",
            function() {
                Ua = o;
                f()
            }), Xa = i)
        }
    }
    var Ua, Xa, Wa = [],
    Va = new Image;
    va(5E3);
    function Ya(a) {
        var b = {
            duration: 1E3,
            Vc: 30,
            gh: 0,
            fe: Za.GA,
            Tu: p()
        };
        this.ge = [];
        if (a) for (var c in a) b[c] = a[c];
        this.k = b;
        if (Ca(b.gh)) {
            var d = this;
            setTimeout(function() {
                d.start()
            },
            b.gh)
        } else b.gh != $a && this.start()
    }
    var $a = "INFINITE";
    Ya.prototype.start = function() {
        this.Rn = Ga();
        this.ur = this.Rn + this.k.duration;
        ab(this)
    };
    Ya.prototype.add = fa(0);
    function ab(a) {
        var b = Ga();
        b >= a.ur ? (Da(a.k.va) && a.k.va(a.k.fe(1)), Da(a.k.finish) && a.k.finish(), 0 < a.ge.length && (b = a.ge[0], b.ge = [].concat(a.ge.slice(1)), b.start())) : (a.oq = a.k.fe((b - a.Rn) / a.k.duration), Da(a.k.va) && a.k.va(a.oq), a.Dv || (a.bm = setTimeout(function() {
            ab(a)
        },
        1E3 / a.k.Vc)))
    }
    Ya.prototype.stop = function(a) {
        this.Dv = i;
        for (var b = 0; b < this.ge.length; b++) this.ge[b].stop(),
        this.ge[b] = n;
        this.ge.length = 0;
        this.bm && (clearTimeout(this.bm), this.bm = n);
        this.k.Tu(this.oq);
        a && (this.ur = this.Rn, ab(this))
    };
    Ya.prototype.cancel = fa(2);
    var Za = {
        GA: function(a) {
            return a
        },
        reverse: function(a) {
            return 1 - a
        },
        yt: function(a) {
            return a * a
        },
        UH: function(a) {
            return Math.pow(a, 3)
        },
        WH: function(a) {
            return - (a * (a - 2))
        },
        VH: function(a) {
            return Math.pow(a - 1, 3) + 1
        },
        vz: function(a) {
            return 0.5 > a ? 2 * a * a: -2 * (a - 2) * a - 1
        },
        BM: function(a) {
            return 0.5 > a ? 4 * Math.pow(a, 3) : 4 * Math.pow(a - 1, 3) + 1
        },
        CM: function(a) {
            return (1 - Math.cos(Math.PI * a)) / 2
        }
    };
    Za["ease-in"] = Za.yt;
    Za["ease-out"] = Za.WH;
    var C = {
        ba: "http://api0.map.bdimg.com/images/",
        Ts: {
            "\u5317\u4eac": {
                fq: "bj",
                m: new G(116.403874, 39.914889)
            },
            "\u4e0a\u6d77": {
                fq: "sh",
                m: new G(121.487899, 31.249162)
            },
            "\u6df1\u5733": {
                fq: "sz",
                m: new G(114.025974, 22.546054)
            },
            "\u5e7f\u5dde": {
                fq: "gz",
                m: new G(113.30765, 23.120049)
            }
        },
        fontFamily: "arial,sans-serif"
    };
    t.N.Te ? (t.extend(C, {
        kz: "url(" + C.ba + "ruler.cur),crosshair",
        nb: "-moz-grab",
        qc: "-moz-grabbing"
    }), t.platform.yA && (C.fontFamily = "arial,simsun,sans-serif")) : t.N.Ry || t.N.sK ? t.extend(C, {
        kz: "url(" + C.ba + "ruler.cur) 2 6,crosshair",
        nb: "url(" + C.ba + "openhand.cur) 8 8,default",
        qc: "url(" + C.ba + "closedhand.cur) 8 8,move"
    }) : t.extend(C, {
        kz: "url(" + C.ba + "ruler.cur),crosshair",
        nb: "url(" + C.ba + "openhand.cur),default",
        qc: "url(" + C.ba + "closedhand.cur),move"
    });
    function bb(a, b) {
        var c = a.style;
        c.left = b[0] + "px";
        c.top = b[1] + "px"
    }
    function cb(a) {
        0 < t.N.V ? a.unselectable = "on": a.style.MozUserSelect = "none"
    }
    function db(a) {
        return a && a.parentNode && 11 != a.parentNode.nodeType
    }
    function eb(a, b) {
        t.B.xu(a, "beforeEnd", b);
        return a.lastChild
    }
    function fb(a) {
        for (var b = {
            left: 0,
            top: 0
        }; a && a.offsetParent;) b.left += a.offsetLeft,
        b.top += a.offsetTop,
        a = a.offsetParent;
        return b
    }
    function A(a) {
        a = window.event || a;
        a.stopPropagation ? a.stopPropagation() : a.cancelBubble = i
    }
    function gb(a) {
        a = window.event || a;
        a.preventDefault ? a.preventDefault() : a.returnValue = o;
        return o
    }
    function ka(a) {
        A(a);
        return gb(a)
    }
    function hb() {
        var a = document.documentElement,
        b = document.body;
        return a && (a.scrollTop || a.scrollLeft) ? [a.scrollTop, a.scrollLeft] : b ? [b.scrollTop, b.scrollLeft] : [0, 0]
    }
    function ib(a, b) {
        if (a && b) return Math.round(Math.sqrt(Math.pow(a.x - b.x, 2) + Math.pow(a.y - b.y, 2)))
    }
    function jb(a, b) {
        var c = [],
        b = b ||
        function(a) {
            return a
        },
        d;
        for (d in a) c.push(d + "=" + b(a[d]));
        return c.join("&")
    }
    function J(a, b, c) {
        var d = document.createElement(a);
        c && (d = document.createElementNS(c, a));
        return t.B.pv(d, b || {})
    }
    function Ba(a) {
        if (a.currentStyle) return a.currentStyle;
        if (a.ownerDocument && a.ownerDocument.defaultView) return a.ownerDocument.defaultView.getComputedStyle(a, n)
    }
    function Da(a) {
        return "function" == typeof a
    }
    function Ca(a) {
        return "number" == typeof a
    }
    function Ea(a) {
        return "string" == typeof a
    }
    function lb(a) {
        return "undefined" != typeof a
    }
    function mb(a) {
        return "object" == typeof a
    }
    var nb = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    function ob(a) {
        var b = "",
        c, d, e = "",
        f, g = "",
        j = 0;
        f = /[^A-Za-z0-9\+\/\=]/g;
        if (!a || f.exec(a)) return a;
        a = a.replace(/[^A-Za-z0-9\+\/\=]/g, "");
        do c = nb.indexOf(a.charAt(j++)),
        d = nb.indexOf(a.charAt(j++)),
        f = nb.indexOf(a.charAt(j++)),
        g = nb.indexOf(a.charAt(j++)),
        c = c << 2 | d >> 4,
        d = (d & 15) << 4 | f >> 2,
        e = (f & 3) << 6 | g,
        b += String.fromCharCode(c),
        64 != f && (b += String.fromCharCode(d)),
        64 != g && (b += String.fromCharCode(e));
        while (j < a.length);
        return b
    }
    var L = t.lang.Jq;
    function F() {
        return ! (!t.platform.qJ && !t.platform.pJ && !t.platform.vk)
    }
    function Aa() {
        return ! (!t.platform.yA && !t.platform.rJ && !t.platform.wJ)
    }
    function Ga() {
        return (new Date).getTime()
    }
    function pb() {
        var a = document.body.appendChild(J("div"));
        a.innerHTML = '<v:shape id="vml_tester1" adj="1" />';
        var b = a.firstChild;
        if (!b.style) return o;
        b.style.behavior = "url(#default#VML)";
        b = b ? "object" == typeof b.adj: i;
        a.parentNode.removeChild(a);
        return b
    }
    function qb() {
        return !! document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Shape", "1.1")
    }
    function rb() {
        return !! J("canvas").getContext
    }
    var Fa; (function() {
        function a(a) {
            this.AG = a;
            this.timing = {};
            this.start = +new Date
        }
        function b(a, b) {
            if (a.length === +a.length) for (var c = 0,
            d = a.length; c < d && b.call(aa, c, a[c], a) !== o; c++);
            else for (c in a) if (a.hasOwnProperty(c) && b.call(aa, c, a[c], a) === o) break
        }
        var c = [],
        d = {
            push: function(a) {
                c.push(a);
                if (window.localStorage && window.JSON) try {
                    localStorage.setItem("WPO_NR", JSON.stringify(c))
                } catch(b) {}
            },
            get: function(a) {
                var b = [];
                if (window.localStorage) try {
                    a && localStorage.removeItem("WPO_NR")
                } catch(d) {}
                b = c;
                a && (c = []);
                return b
            }
        },
        e,
        f,
        g,
        j,
        k = {}; (!window.localStorage || !window.JSON) && document.attachEvent && window.attachEvent("onbeforeunload",
        function() {
            l.send()
        });
        var l = {
            send: function(a) {
                var c = [],
                e = [],
                f = a || d.get(i),
                g;
                0 < f.length && (b(f,
                function(d, e) {
                    var f = [];
                    b(e.timing,
                    function(a, b) {
                        f.push('"' + a + '":' + b)
                    });
                    c.push('{"t":{' + f.join(",") + '},"a":' + e.AG + "}"); ! g && (a && e.start) && (g = e.start)
                }), b(k,
                function(a, b) {
                    e.push(a + "=" + b)
                }), e.push("d=[" + c.join(",") + "]"), g ? e.push("_st=" + g) : e.push("_t=" + +new Date), f = new Image, f.src = "http://static.tieba.baidu.com/tb/pms/img/st.gif?" + e.join("&"), window["___pms_img_" + 1 * new Date] = f)
            }
        };
        a.prototype = {
            dc: function(a, b) {
                this.timing[a] = 0 <= b ? b: new Date - this.start
            },
            Bv: function() {
                this.start = +new Date
            },
            vL: function() {
                this.dc("tt")
            },
            jC: function() {
                this.dc("vt")
            },
            kq: function() {
                f && (d.push(this), d.get().length >= g && l.send())
            },
            error: p()
        };
        Fa = {
            yj: {
                vu: function(a) {
                    var b = navigator.wM || navigator.mN || navigator.ZN || {
                        type: 0
                    };
                    f = Math.random() <= (a.tK || 0.01);
                    g = a.max || 5;
                    j = a.lN || b.type;
                    k = {
                        p: a.cK,
                        mnt: j,
                        b: 50
                    };
                    window.localStorage && (window.JSON && window.addEventListener) && (e = d.get(i), window.addEventListener("load",
                    function() {
                        l.send(e)
                    },
                    o))
                },
                lm: function(b) {
                    return new a(b)
                }
            }
        }
    })();
    Fa.yj.vu({
        cK: 18,
        tK: 0.1,
        max: 1
    });
    function Oa(a, b) {
        if (b) {
            var c = (1E5 * Math.random()).toFixed(0);
            B._rd["_cbk" + c] = function(a) {
                b && b(a);
                delete B._rd["_cbk" + c]
            };
            a += "&callback=BMap._rd._cbk" + c
        }
        var d = J("script", {
            type: "text/javascript"
        });
        d.charset = "utf-8";
        d.src = a;
        d.addEventListener ? d.addEventListener("load",
        function(a) {
            a = a.target;
            a.parentNode.removeChild(a)
        },
        o) : d.attachEvent && d.attachEvent("onreadystatechange",
        function() {
            var a = window.event.srcElement;
            a && ("loaded" == a.readyState || "complete" == a.readyState) && a.parentNode.removeChild(a)
        });
        setTimeout(function() {
            document.getElementsByTagName("head")[0].appendChild(d);
            d = n
        },
        1)
    };
    var sb = {
        map: "3e1apz",
        common: "5ywkhh",
        tile: "qksuas",
        marker: "xkrekm",
        markeranimation: "b1ycvd",
        poly: "axb1n5",
        draw: "f5wovp",
        drawbysvg: "lnvhia",
        drawbyvml: "zvv2jc",
        drawbycanvas: "jejqs5",
        infowindow: "b4jlxp",
        oppc: "bte1wy",
        opmb: "az0s40",
        menu: "5lyg4m",
        control: "vedtdt",
        navictrl: "umm5hr",
        geoctrl: "ncksgx",
        copyrightctrl: "g4en4a",
        scommon: "gis1zl",
        local: "xl2nbf",
        route: "qi2hkx",
        othersearch: "thpigr",
        mapclick: "ya5qx4",
        buslinesearch: "muurgk",
        hotspot: "uvy0w0",
        autocomplete: "rplbmr",
        coordtrans: "mdr3qv",
        coordtransutils: "mbfp4a",
        clayer: "smgpa2",
        panorama: "nw2euy",
        panoramaservice: "aeeihu",
        panoramaflash: "2qc2xi",
        mapclick: "ya5qx4",
        vector: "igj1c4"
    };
    t.zq = function() {
        function a(a) {
            return d && !!c[b + a + "_" + sb[a]]
        }
        var b = "BMap_",
        c = window.localStorage,
        d = "localStorage" in window && c !== n && c !== aa;
        return {
            tJ: d,
            set: function(a, f) {
                if (d) {
                    for (var g = b + a + "_",
                    j = c.length,
                    k; j--;) k = c.key(j),
                    -1 < k.indexOf(g) && c.removeItem(k);
                    try {
                        c.setItem(b + a + "_" + sb[a], f)
                    } catch(l) {
                        c.clear()
                    }
                }
            },
            get: function(e) {
                return d && a(e) ? c.getItem(b + e + "_" + sb[e]) : o
            },
            Py: a
        }
    } ();
    function H() {}
    t.object.extend(H, {
        Hg: {
            Yv: -1,
            JC: 0,
            Uk: 1
        },
        Lz: function() {
            var a = "drawbysvg";
            F() && rb() ? a = "drawbycanvas": qb() ? a = "drawbysvg": pb() ? a = "drawbyvml": rb() && (a = "drawbycanvas");
            return {
                control: [],
                marker: [],
                poly: ["marker", a],
                drawbysvg: ["draw"],
                drawbyvml: ["draw"],
                drawbycanvas: ["draw"],
                infowindow: ["common", "marker"],
                menu: [],
                oppc: [],
                opmb: [],
                scommon: [],
                local: ["scommon"],
                route: ["scommon"],
                othersearch: ["scommon"],
                autocomplete: ["scommon"],
                mapclick: ["scommon"],
                buslinesearch: ["route"],
                hotspot: [],
                coordtransutils: ["coordtrans"],
                clayer: ["tile"],
                panoramaservice: [],
                panorama: ["marker", "panoramaservice"],
                panoramaflash: ["panoramaservice"]
            }
        },
        AN: {},
        Rv: {
            RC: "http://api0.map.bdimg.com/getmodules?v=2.0",
            jG: 5E3
        },
        ht: o,
        zc: {
            bi: {},
            Aj: [],
            Io: []
        },
        load: function(a, b, c) {
            var d = this.om(a);
            if (d.Ec == this.Hg.Uk) c && b();
            else {
                if (d.Ec == this.Hg.Yv) {
                    this.Vy(a);
                    this.pB(a);
                    var e = this;
                    e.ht == o && (e.ht = i, setTimeout(function() {
                        for (var a = [], b = 0, c = e.zc.Aj.length; b < c; b++) {
                            var d = e.zc.Aj[b],
                            l = "";
                            ha.zq.Py(d) ? l = ha.zq.get(d) : (l = "", a.push(d + "_" + sb[d]));
                            e.zc.Io.push({
                                SA: d,
                                Nu: l
                            })
                        }
                        e.ht = o;
                        e.zc.Aj.length = 0;
                        0 == a.length ? e.yz() : Oa(e.Rv.RC + "&mod=" + a.join(","))
                    },
                    1));
                    d.Ec = this.Hg.JC
                }
                d.Sn.push(b)
            }
        },
        Vy: function(a) {
            if (a && this.Lz()[a]) for (var a = this.Lz()[a], b = 0; b < a.length; b++) this.Vy(a[b]),
            this.zc.bi[a[b]] || this.pB(a[b])
        },
        pB: function(a) {
            for (var b = 0; b < this.zc.Aj.length; b++) if (this.zc.Aj[b] == a) return;
            this.zc.Aj.push(a)
        },
        rK: function(a, b) {
            var c = this.om(a);
            try {
                eval(b)
            } catch(d) {
                return
            }
            c.Ec = this.Hg.Uk;
            for (var e = 0,
            f = c.Sn.length; e < f; e++) c.Sn[e]();
            c.Sn.length = 0
        },
        Py: function(a, b) {
            var c = this;
            c.timeout = setTimeout(function() {
                c.zc.bi[a].Ec != c.Hg.Uk ? (c.remove(a), c.load(a, b)) : clearTimeout(c.timeout)
            },
            c.Rv.jG)
        },
        om: function(a) {
            this.zc.bi[a] || (this.zc.bi[a] = {},
            this.zc.bi[a].Ec = this.Hg.Yv, this.zc.bi[a].Sn = []);
            return this.zc.bi[a]
        },
        remove: function(a) {
            delete this.om(a)
        },
        UG: function(a, b) {
            for (var c = this.zc.Io,
            d = i,
            e = 0,
            f = c.length; e < f; e++)"" == c[e].Nu && (c[e].SA == a ? c[e].Nu = b: d = o);
            d && this.yz()
        },
        yz: function() {
            for (var a = this.zc.Io,
            b = 0,
            c = a.length; b < c; b++) this.rK(a[b].SA, a[b].Nu);
            this.zc.Io.length = 0
        }
    });
    function O(a, b) {
        this.x = a || 0;
        this.y = b || 0;
        this.x = this.x;
        this.y = this.y
    }
    O.prototype.bb = function(a) {
        return a && a.x == this.x && a.y == this.y
    };
    function K(a, b) {
        this.width = a || 0;
        this.height = b || 0
    }
    K.prototype.bb = function(a) {
        return a && this.width == a.width && this.height == a.height
    };
    function Na(a, b) {
        a && (this.sb = a, this.M = "spot" + Na.M++, b = b || {},
        this.ng = b.text || "", this.yo = b.offsets ? b.offsets.slice(0) : [5, 5, 5, 5], this.ny = b.userData || n, this.yf = b.minZoom || n, this.Zd = b.maxZoom || n)
    }
    Na.M = 0;
    t.extend(Na.prototype, {
        la: function(a) {
            this.yf == n && (this.yf = a.G.tc);
            this.Zd == n && (this.Zd = a.G.Zc)
        },
        ea: function(a) {
            a instanceof G && (this.sb = a)
        },
        da: s("sb"),
        tn: ba("ng"),
        mu: s("ng"),
        setUserData: ba("ny"),
        getUserData: s("ny")
    });
    function R() {
        this.A = n;
        this.tb = "control";
        this.zb = this.Jy = i
    }
    t.lang.ja(R, t.lang.ra, "Control");
    t.extend(R.prototype, {
        initialize: function(a) {
            this.A = a;
            if (this.C) return a.ya.appendChild(this.C),
            this.C
        },
        Wd: function(a) { ! this.C && (this.initialize && Da(this.initialize)) && (this.C = this.initialize(a));
            this.k = this.k || {
                ff: o
            };
            this.ws();
            this.Do();
            this.C && (this.C.Kl = this)
        },
        ws: function() {
            var a = this.C;
            if (a) {
                var b = a.style;
                b.position = "absolute";
                b.zIndex = this.br || "10";
                b.MozUserSelect = "none";
                b.WebkitTextSizeAdjust = "none";
                this.k.ff || t.B.ab(a, "BMap_noprint");
                F() || t.D(a, "contextmenu", ka)
            }
        },
        remove: function() {
            this.A = n;
            this.C && (this.C.parentNode && this.C.parentNode.removeChild(this.C), this.C = this.C.Kl = n)
        },
        cb: function() {
            this.C = eb(this.A.ya, "<div unselectable='on'></div>");
            this.zb == o && t.B.J(this.C);
            return this.C
        },
        Do: function() {
            this.Nb(this.k.anchor)
        },
        Nb: function(a) {
            if (this.mM || !Ca(a) || isNaN(a) || a < tb || 3 < a) a = this.defaultAnchor;
            this.k = this.k || {
                ff: o
            };
            this.k.ia = this.k.ia || this.defaultOffset;
            var b = this.k.anchor;
            this.k.anchor = a;
            if (this.C) {
                var c = this.C,
                d = this.k.ia.width,
                e = this.k.ia.height;
                c.style.left = c.style.top = c.style.right = c.style.bottom = "auto";
                switch (a) {
                case tb:
                    c.style.top = e + "px";
                    c.style.left = d + "px";
                    break;
                case ub:
                    c.style.top = e + "px";
                    c.style.right = d + "px";
                    break;
                case vb:
                    c.style.bottom = e + "px";
                    c.style.left = d + "px";
                    break;
                case 3:
                    c.style.bottom = e + "px",
                    c.style.right = d + "px"
                }
                c = ["TL", "TR", "BL", "BR"];
                t.B.Vb(this.C, "anchor" + c[b]);
                t.B.ab(this.C, "anchor" + c[a])
            }
        },
        Ot: function() {
            return this.k.anchor
        },
        dd: function(a) {
            a instanceof K && (this.k = this.k || {
                ff: o
            },
            this.k.ia = new K(a.width, a.height), this.C && this.Nb(this.k.anchor))
        },
        Xe: function() {
            return this.k.ia
        },
        vd: s("C"),
        show: function() {
            this.zb != i && (this.zb = i, this.C && t.B.show(this.C))
        },
        J: function() {
            this.zb != o && (this.zb = o, this.C && t.B.J(this.C))
        },
        isPrintable: function() {
            return !! this.k.ff
        },
        Cg: function() {
            return ! this.C && !this.A ? o: !!this.zb
        }
    });
    var tb = 0,
    ub = 1,
    vb = 2;
    function Pa(a) {
        R.call(this);
        a = a || {};
        this.k = {
            ff: o,
            xv: a.showZoomInfo || i,
            anchor: a.anchor,
            ia: a.offset,
            type: a.type
        };
        this.defaultAnchor = F() ? 3 : tb;
        this.defaultOffset = new K(10, 10);
        this.Nb(a.anchor);
        this.sj(a.type);
        this.kd()
    }
    t.lang.ja(Pa, R, "NavigationControl");
    t.extend(Pa.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        sj: function(a) {
            this.k.type = Ca(a) && 0 <= a && 3 >= a ? a: 0
        },
        rk: function() {
            return this.k.type
        },
        kd: function() {
            var a = this;
            H.load("navictrl",
            function() {
                a.Td()
            })
        }
    });
    function wb(a) {
        R.call(this);
        a = a || {};
        this.k = {
            anchor: a.anchor,
            ia: a.offset,
            WK: a.showAddressBar,
            wz: a.enableAutoLocation,
            MA: a.locationIcon
        };
        this.defaultAnchor = vb;
        this.defaultOffset = new K(0, 4);
        this.kd()
    }
    t.lang.ja(wb, R, "GeolocationControl");
    t.extend(wb.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        kd: function() {
            var a = this;
            H.load("geoctrl",
            function() {
                a.Td()
            })
        },
        getAddressComponent: function() {
            return this.By || n
        },
        location: function() {
            this.k.wz = i
        }
    });
    function yb(a) {
        R.call(this);
        a = a || {};
        this.k = {
            ff: o,
            anchor: a.anchor,
            ia: a.offset
        };
        this.ib = [];
        this.defaultAnchor = vb;
        this.defaultOffset = new K(5, 2);
        this.Nb(a.anchor);
        this.Jy = o;
        this.kd()
    }
    t.lang.ja(yb, R, "CopyrightControl");
    t.object.extend(yb.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        Uo: function(a) {
            if (a && Ca(a.id) && !isNaN(a.id)) {
                var b = {
                    bounds: n,
                    content: ""
                },
                c;
                for (c in a) b[c] = a[c];
                if (a = this.Qi(a.id)) for (var d in b) a[d] = b[d];
                else this.ib.push(b)
            }
        },
        Qi: function(a) {
            for (var b = 0,
            c = this.ib.length; b < c; b++) if (this.ib[b].id == a) return this.ib[b]
        },
        Ut: s("ib"),
        fv: function(a) {
            for (var b = 0,
            c = this.ib.length; b < c; b++) this.ib[b].id == a && (r = this.ib.splice(b, 1), b--, c = this.ib.length)
        },
        kd: function() {
            var a = this;
            H.load("copyrightctrl",
            function() {
                a.Td()
            })
        }
    });
    function Ra(a) {
        R.call(this);
        a = a || {};
        this.k = {
            ff: o,
            size: a.size || new K(150, 150),
            padding: 5,
            Aa: a.isOpen === i ? i: o,
            IL: 4,
            ia: a.offset,
            anchor: a.anchor
        };
        this.defaultAnchor = 3;
        this.defaultOffset = new K(0, 0);
        this.kl = this.ll = 13;
        this.Nb(a.anchor);
        this.Oc(this.k.size);
        this.kd()
    }
    t.lang.ja(Ra, R, "OverviewMapControl");
    t.extend(Ra.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        Nb: function(a) {
            R.prototype.Nb.call(this, a)
        },
        Tc: function() {
            this.Tc.Sj = i;
            this.k.Aa = !this.k.Aa;
            this.C || (this.Tc.Sj = o)
        },
        Oc: function(a) {
            a instanceof K || (a = new K(150, 150));
            a.width = 0 < a.width ? a.width: 150;
            a.height = 0 < a.height ? a.height: 150;
            this.k.size = a
        },
        xb: function() {
            return this.k.size
        },
        Aa: function() {
            return this.k.Aa
        },
        kd: function() {
            var a = this;
            H.load("control",
            function() {
                a.Td()
            })
        }
    });
    function Qa(a) {
        R.call(this);
        a = a || {};
        this.k = {
            ff: o,
            color: "black",
            Wb: "metric",
            ia: a.offset
        };
        this.defaultAnchor = vb;
        this.defaultOffset = new K(81, 18);
        this.Nb(a.anchor);
        this.Cf = {
            metric: {
                name: "metric",
                Wy: 1,
                jA: 1E3,
                YB: "\u7c73",
                ZB: "\u516c\u91cc"
            },
            us: {
                name: "us",
                Wy: 3.2808,
                jA: 5280,
                YB: "\u82f1\u5c3a",
                ZB: "\u82f1\u91cc"
            }
        };
        this.Cf[this.k.Wb] || (this.k.Wb = "metric");
        this.Ux = n;
        this.Ax = {};
        this.kd()
    }
    t.lang.ja(Qa, R, "ScaleControl");
    t.object.extend(Qa.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        qv: function(a) {
            this.k.color = a + ""
        },
        LM: function() {
            return this.k.color
        },
        wv: function(a) {
            this.k.Wb = this.Cf[a] && this.Cf[a].name || this.k.Wb
        },
        VI: function() {
            return this.k.Wb
        },
        kd: function() {
            var a = this;
            H.load("control",
            function() {
                a.Td()
            })
        }
    });
    var zb = 0;
    function Sa(a) {
        R.call(this);
        a = a || {};
        this.defaultAnchor = ub;
        this.defaultOffset = new K(10, 10);
        this.k = {
            ff: o,
            af: [sa, wa, xa, ua],
            type: a.type || zb,
            ia: a.offset || this.defaultOffset,
            IM: i
        };
        this.Nb(a.anchor);
        "[object Array]" == Object.prototype.toString.call(a.mapTypes) && (this.k.af = a.mapTypes.slice(0));
        this.kd()
    }
    t.lang.ja(Sa, R, "MapTypeControl");
    t.object.extend(Sa.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        kd: function() {
            var a = this;
            H.load("control",
            function() {
                a.Td()
            })
        }
    });
    function Ab(a) {
        R.call(this);
        a = a || {};
        this.k = {
            ff: o,
            ia: a.offset,
            anchor: a.anchor
        };
        this.hg = o;
        this.Ko = n;
        this.Jx = new Bb({
            ik: "api"
        });
        this.Kx = new Cb(n, {
            ik: "api"
        });
        this.defaultAnchor = ub;
        this.defaultOffset = new K(10, 10);
        this.Nb(a.anchor);
        this.kd();
        va(5042)
    }
    t.lang.ja(Ab, R, "PanoramaControl");
    t.extend(Ab.prototype, {
        initialize: function(a) {
            this.A = a;
            return this.C
        },
        kd: function() {
            var a = this;
            H.load("control",
            function() {
                a.Td()
            })
        }
    });
    function Db(a) {
        t.lang.ra.call(this);
        this.k = {
            ya: n,
            cursor: "default"
        };
        this.k = t.extend(this.k, a);
        this.tb = "contextmenu";
        this.A = n;
        this.fa = [];
        this.$d = [];
        this.md = [];
        this.kp = this.nm = n;
        this.xf = o;
        var b = this;
        H.load("menu",
        function() {
            b.Zb()
        })
    }
    t.lang.ja(Db, t.lang.ra, "ContextMenu");
    t.object.extend(Db.prototype, {
        la: function(a, b) {
            this.A = a;
            this.fi = b || n
        },
        remove: function() {
            this.A = this.fi = n
        },
        Xo: function(a) {
            if (a && !("menuitem" != a.tb || "" == a.ng || 0 >= a.lG)) {
                for (var b = 0,
                c = this.fa.length; b < c; b++) if (this.fa[b] === a) return;
                this.fa.push(a);
                this.$d.push(a)
            }
        },
        removeItem: function(a) {
            if (a && "menuitem" == a.tb) {
                for (var b = 0,
                c = this.fa.length; b < c; b++) this.fa[b] === a && (this.fa[b].remove(), this.fa.splice(b, 1), c--);
                b = 0;
                for (c = this.$d.length; b < c; b++) this.$d[b] === a && (this.$d[b].remove(), this.$d.splice(b, 1), c--)
            }
        },
        Js: function() {
            this.fa.push({
                tb: "divider",
                Mg: this.md.length
            });
            this.md.push({
                B: n
            })
        },
        hv: function(a) {
            if (this.md[a]) {
                for (var b = 0,
                c = this.fa.length; b < c; b++) this.fa[b] && ("divider" == this.fa[b].tb && this.fa[b].Mg == a) && (this.fa.splice(b, 1), c--),
                this.fa[b] && ("divider" == this.fa[b].tb && this.fa[b].Mg > a) && this.fa[b].Mg--;
                this.md.splice(a, 1)
            }
        },
        vd: s("C"),
        show: function() {
            this.xf != i && (this.xf = i)
        },
        J: function() {
            this.xf != o && (this.xf = o)
        },
        DK: function(a) {
            a && (this.k.cursor = a)
        },
        getItem: function(a) {
            return this.$d[a]
        }
    });
    function Eb(a, b, c) {
        if (a && Da(b)) {
            t.lang.ra.call(this);
            this.k = {
                width: 100,
                id: ""
            };
            c = c || {};
            this.k.width = 1 * c.width ? c.width: 100;
            this.k.id = c.id ? c.id: "";
            this.ng = a + "";
            this.of = b;
            this.A = n;
            this.tb = "menuitem";
            this.C = this.qf = n;
            this.uf = i;
            var d = this;
            H.load("menu",
            function() {
                d.Zb()
            })
        }
    }
    t.lang.ja(Eb, t.lang.ra, "MenuItem");
    t.object.extend(Eb.prototype, {
        la: function(a, b) {
            this.A = a;
            this.qf = b
        },
        remove: function() {
            this.A = this.qf = n
        },
        tn: function(a) {
            a && (this.ng = a + "")
        },
        vd: s("C"),
        enable: function() {
            this.uf = i
        },
        disable: function() {
            this.uf = o
        }
    });
    function La(a, b) {
        a && !b && (b = a);
        this.qd = this.od = this.td = this.sd = this.oi = this.ei = n;
        a && (this.oi = new G(a.lng, a.lat), this.ei = new G(b.lng, b.lat), this.td = a.lng, this.sd = a.lat, this.qd = b.lng, this.od = b.lat)
    }
    t.object.extend(La.prototype, {
        Bg: function() {
            return ! this.oi || !this.ei
        },
        bb: function(a) {
            return ! (a instanceof La) || this.Bg() ? o: this.te().bb(a.te()) && this.se().bb(a.se())
        },
        te: s("oi"),
        se: s("ei"),
        fH: function(a) {
            return ! (a instanceof La) || this.Bg() || a.Bg() ? o: a.td > this.td && a.qd < this.qd && a.sd > this.sd && a.od < this.od
        },
        Da: function() {
            return this.Bg() ? n: new G((this.td + this.qd) / 2, (this.sd + this.od) / 2)
        },
        mA: function(a) {
            if (! (a instanceof La) || Math.max(a.td, a.qd) < Math.min(this.td, this.qd) || Math.min(a.td, a.qd) > Math.max(this.td, this.qd) || Math.max(a.sd, a.od) < Math.min(this.sd, this.od) || Math.min(a.sd, a.od) > Math.max(this.sd, this.od)) return n;
            var b = Math.max(this.td, a.td),
            c = Math.min(this.qd, a.qd),
            d = Math.max(this.sd, a.sd),
            a = Math.min(this.od, a.od);
            return new La(new G(b, d), new G(c, a))
        },
        gH: function(a) {
            return ! (a instanceof G) || this.Bg() ? o: a.lng >= this.td && a.lng <= this.qd && a.lat >= this.sd && a.lat <= this.od
        },
        extend: function(a) {
            if (a instanceof G) {
                var b = a.lng,
                a = a.lat;
                this.oi || (this.oi = new G(0, 0));
                this.ei || (this.ei = new G(0, 0));
                if (!this.td || this.td > b) this.oi.lng = this.td = b;
                if (!this.qd || this.qd < b) this.ei.lng = this.qd = b;
                if (!this.sd || this.sd > a) this.oi.lat = this.sd = a;
                if (!this.od || this.od < a) this.ei.lat = this.od = a
            }
        },
        Iv: function() {
            return this.Bg() ? new G(0, 0) : new G(Math.abs(this.qd - this.td), Math.abs(this.od - this.sd))
        }
    });
    function G(a, b) {
        isNaN(a) && (a = ob(a), a = isNaN(a) ? 0 : a);
        Ea(a) && (a = parseFloat(a));
        isNaN(b) && (b = ob(b), b = isNaN(b) ? 0 : b);
        Ea(b) && (b = parseFloat(b));
        this.lng = a;
        this.lat = b
    }
    G.oA = function(a) {
        return a && 180 >= a.lng && -180 <= a.lng && 74 >= a.lat && -74 <= a.lat
    };
    G.prototype.bb = function(a) {
        return a && this.lat == a.lat && this.lng == a.lng
    };
    function Fb() {}
    Fb.prototype.Ym = function() {
        throw "lngLatToPoint\u65b9\u6cd5\u672a\u5b9e\u73b0";
    };
    Fb.prototype.Ch = function() {
        throw "pointToLngLat\u65b9\u6cd5\u672a\u5b9e\u73b0";
    };
    function Gb() {};
    var Ka = {
        Yy: function(a, b, c) {
            H.load("coordtransutils",
            function() {
                Ka.FG(a, b, c)
            },
            i)
        },
        Xy: function(a, b, c) {
            H.load("coordtransutils",
            function() {
                Ka.EG(a, b, c)
            },
            i)
        }
    };
    function P() {}
    P.prototype = new Fb;
    t.extend(P, {
        sC: 6370996.81,
        aw: [1.289059486E7, 8362377.87, 5591021, 3481989.83, 1678043.12, 0],
        Mn: [75, 60, 45, 30, 15, 0],
        vC: [[1.410526172116255E-8, 8.98305509648872E-6, -1.9939833816331, 200.9824383106796, -187.2403703815547, 91.6087516669843, -23.38765649603339, 2.57121317296198, -0.03801003308653, 1.73379812E7], [ - 7.435856389565537E-9, 8.983055097726239E-6, -0.78625201886289, 96.32687599759846, -1.85204757529826, -59.36935905485877, 47.40033549296737, -16.50741931063887, 2.28786674699375, 1.026014486E7], [ - 3.030883460898826E-8, 8.98305509983578E-6, 0.30071316287616, 59.74293618442277, 7.357984074871, -25.38371002664745, 13.45380521110908, -3.29883767235584, 0.32710905363475, 6856817.37], [ - 1.981981304930552E-8, 8.983055099779535E-6, 0.03278182852591, 40.31678527705744, 0.65659298677277, -4.44255534477492, 0.85341911805263, 0.12923347998204, -0.04625736007561, 4482777.06], [3.09191371068437E-9, 8.983055096812155E-6, 6.995724062E-5, 23.10934304144901, -2.3663490511E-4, -0.6321817810242, -0.00663494467273, 0.03430082397953, -0.00466043876332, 2555164.4], [2.890871144776878E-9, 8.983055095805407E-6, -3.068298E-8, 7.47137025468032, -3.53937994E-6, -0.02145144861037, -1.234426596E-5, 1.0322952773E-4, -3.23890364E-6, 826088.5]],
        Zv: [[ - 0.0015702102444, 111320.7020616939, 1704480524535203, -10338987376042340, 26112667856603880, -35149669176653700, 26595700718403920, -10725012454188240, 1800819912950474, 82.5], [8.277824516172526E-4, 111320.7020463578, 6.477955746671607E8, -4.082003173641316E9, 1.077490566351142E10, -1.517187553151559E10, 1.205306533862167E10, -5.124939663577472E9, 9.133119359512032E8, 67.5], [0.00337398766765, 111320.7020202162, 4481351.045890365, -2.339375119931662E7, 7.968221547186455E7, -1.159649932797253E8, 9.723671115602145E7, -4.366194633752821E7, 8477230.501135234, 52.5], [0.00220636496208, 111320.7020209128, 51751.86112841131, 3796837.749470245, 992013.7397791013, -1221952.21711287, 1340652.697009075, -620943.6990984312, 144416.9293806241, 37.5], [ - 3.441963504368392E-4, 111320.7020576856, 278.2353980772752, 2485758.690035394, 6070.750963243378, 54821.18345352118, 9540.606633304236, -2710.55326746645, 1405.483844121726, 22.5], [ - 3.218135878613132E-4, 111320.7020701615, 0.00369383431289, 823725.6402795718, 0.46104986909093, 2351.343141331292, 1.58060784298199, 8.77738589078284, 0.37238884252424, 7.45]],
        NM: function(a, b) {
            if (!a || !b) return 0;
            var c, d, a = this.mb(a);
            if (!a) return 0;
            c = this.Mh(a.lng);
            d = this.Mh(a.lat);
            b = this.mb(b);
            return ! b ? 0 : this.Id(c, this.Mh(b.lng), d, this.Mh(b.lat))
        },
        Vt: function(a, b) {
            if (!a || !b) return 0;
            a.lng = this.cu(a.lng, -180, 180);
            a.lat = this.iu(a.lat, -74, 74);
            b.lng = this.cu(b.lng, -180, 180);
            b.lat = this.iu(b.lat, -74, 74);
            return this.Id(this.Mh(a.lng), this.Mh(b.lng), this.Mh(a.lat), this.Mh(b.lat))
        },
        mb: function(a) {
            var b, c;
            b = new G(Math.abs(a.lng), Math.abs(a.lat));
            for (var d = 0; d < this.aw.length; d++) if (b.lat >= this.aw[d]) {
                c = this.vC[d];
                break
            }
            a = this.Zy(a, c);
            return a = new G(a.lng.toFixed(6), a.lat.toFixed(6))
        },
        vb: function(a) {
            var b, c;
            a.lng = this.cu(a.lng, -180, 180);
            a.lat = this.iu(a.lat, -74, 74);
            b = new G(a.lng, a.lat);
            for (var d = 0; d < this.Mn.length; d++) if (b.lat >= this.Mn[d]) {
                c = this.Zv[d];
                break
            }
            if (!c) for (d = this.Mn.length - 1; 0 <= d; d--) if (b.lat <= -this.Mn[d]) {
                c = this.Zv[d];
                break
            }
            a = this.Zy(a, c);
            return a = new G(a.lng.toFixed(2), a.lat.toFixed(2))
        },
        Zy: function(a, b) {
            if (a && b) {
                var c = b[0] + b[1] * Math.abs(a.lng),
                d = Math.abs(a.lat) / b[9],
                d = b[2] + b[3] * d + b[4] * d * d + b[5] * d * d * d + b[6] * d * d * d * d + b[7] * d * d * d * d * d + b[8] * d * d * d * d * d * d,
                c = c * (0 > a.lng ? -1 : 1),
                d = d * (0 > a.lat ? -1 : 1);
                return new G(c, d)
            }
        },
        Id: function(a, b, c, d) {
            return this.sC * Math.acos(Math.sin(c) * Math.sin(d) + Math.cos(c) * Math.cos(d) * Math.cos(b - a))
        },
        Mh: function(a) {
            return Math.PI * a / 180
        },
        QN: function(a) {
            return 180 * a / Math.PI
        },
        iu: function(a, b, c) {
            b != n && (a = Math.max(a, b));
            c != n && (a = Math.min(a, c));
            return a
        },
        cu: function(a, b, c) {
            for (; a > c;) a -= c - b;
            for (; a < b;) a += c - b;
            return a
        }
    });
    t.extend(P.prototype, {
        ej: function(a) {
            return P.vb(a)
        },
        Ym: function(a) {
            a = P.vb(a);
            return new O(a.lng, a.lat)
        },
        yh: function(a) {
            return P.mb(a)
        },
        Ch: function(a) {
            a = new G(a.x, a.y);
            return P.mb(a)
        },
        ob: function(a, b, c, d, e) {
            if (a) return a = this.ej(a, e),
            b = this.Ib(b),
            new O(Math.round((a.lng - c.lng) / b + d.width / 2), Math.round((c.lat - a.lat) / b + d.height / 2))
        },
        Va: function(a, b, c, d, e) {
            if (a) return b = this.Ib(b),
            this.yh(new G(c.lng + b * (a.x - d.width / 2), c.lat - b * (a.y - d.height / 2)), e)
        },
        Ib: function(a) {
            return Math.pow(2, 18 - a)
        }
    });
    function Ma() {
        this.at = "bj"
    }
    Ma.prototype = new P;
    t.extend(Ma.prototype, {
        ej: function(a, b) {
            return this.kD(b, P.vb(a))
        },
        yh: function(a, b) {
            return P.mb(this.lD(b, a))
        },
        lngLatToPointFor3D: function(a, b) {
            var c = this,
            d = P.vb(a);
            H.load("coordtrans",
            function() {
                var a = Gb.fu(c.at || "bj", d),
                a = new O(a.x, a.y);
                b && b(a)
            },
            i)
        },
        pointToLngLatFor3D: function(a, b) {
            var c = this,
            d = new G(a.x, a.y);
            H.load("coordtrans",
            function() {
                var a = Gb.eu(c.at || "bj", d),
                a = new G(a.lng, a.lat),
                a = P.mb(a);
                b && b(a)
            },
            i)
        },
        kD: function(a, b) {
            if (H.om("coordtrans").Ec == H.Hg.Uk) {
                var c = Gb.fu(a || "bj", b);
                return new G(c.x, c.y)
            }
            H.load("coordtrans", p());
            return new G(0, 0)
        },
        lD: function(a, b) {
            if (H.om("coordtrans").Ec == H.Hg.Uk) {
                var c = Gb.eu(a || "bj", b);
                return new G(c.lng, c.lat)
            }
            H.load("coordtrans", p());
            return new G(0, 0)
        },
        Ib: function(a) {
            return Math.pow(2, 20 - a)
        }
    });
    function Hb() {
        this.tb = "overlay"
    }
    t.lang.ja(Hb, t.lang.ra, "Overlay");
    Hb.Nm = function(a) {
        a *= 1;
        return ! a ? 0 : -1E5 * a << 1
    };
    t.extend(Hb.prototype, {
        Wd: function(a) {
            if (!this.K && Da(this.initialize) && (this.K = this.initialize(a))) this.K.style.WebkitUserSelect = "none";
            this.draw()
        },
        initialize: function() {
            throw "initialize\u65b9\u6cd5\u672a\u5b9e\u73b0";
        },
        draw: function() {
            throw "draw\u65b9\u6cd5\u672a\u5b9e\u73b0";
        },
        remove: function() {
            this.K && this.K.parentNode && this.K.parentNode.removeChild(this.K);
            this.K = n;
            this.dispatchEvent(new L("onremove"))
        },
        J: function() {
            this.K && t.B.J(this.K)
        },
        show: function() {
            this.K && t.B.show(this.K)
        },
        Cg: function() {
            return ! this.K || "none" == this.K.style.display || "hidden" == this.K.style.visibility ? o: i
        }
    });
    B.xd(function(a) {
        function b(a, b) {
            var c = J("div"),
            g = c.style;
            g.position = "absolute";
            g.top = g.left = g.width = g.height = "0";
            g.zIndex = b;
            a.appendChild(c);
            return c
        }
        var c = a.F;
        c.Pd = a.Pd = b(a.platform, 200);
        a.Rc.Nt = b(c.Pd, 800);
        a.Rc.Ku = b(c.Pd, 700);
        a.Rc.Dz = b(c.Pd, 600);
        a.Rc.CA = b(c.Pd, 500);
        a.Rc.OA = b(c.Pd, 400);
        a.Rc.PA = b(c.Pd, 300);
        a.Rc.EL = b(c.Pd, 201);
        a.Rc.Up = b(c.Pd, 200)
    });
    function Q() {
        t.lang.ra.call(this);
        Hb.call(this);
        this.map = n;
        this.zb = i;
        this.Cb = n;
        this.Kw = 0
    }
    t.lang.ja(Q, Hb, "OverlayInternal");
    t.extend(Q.prototype, {
        initialize: function(a) {
            this.map = a;
            t.lang.ra.call(this, this.M);
            return n
        },
        du: s("map"),
        draw: p(),
        remove: function() {
            this.map = n;
            t.lang.mp(this.M);
            Hb.prototype.remove.call(this)
        },
        J: function() {
            this.zb != o && (this.zb = o)
        },
        show: function() {
            this.zb != i && (this.zb = i)
        },
        Cg: function() {
            return ! this.K ? o: !!this.zb
        },
        Ca: s("K"),
        xB: function(a) {
            var a = a || {},
            b;
            for (b in a) this.z[b] = a[b]
        },
        uq: ba("zIndex"),
        jh: function() {
            this.z.jh = i
        },
        BH: function() {
            this.z.jh = o
        },
        $j: ba("Mj"),
        Dk: function() {
            this.Mj = n
        }
    });
    function Ib() {
        this.map = n;
        this.ga = {};
        this.ld = []
    }
    B.xd(function(a) {
        var b = new Ib;
        b.map = a;
        a.ga = b.ga;
        a.ld = b.ld;
        a.addEventListener("load",
        function(a) {
            b.draw(a)
        });
        a.addEventListener("moveend",
        function(a) {
            b.draw(a)
        });
        t.N.V && 8 > t.N.V || "BackCompat" == document.compatMode ? a.addEventListener("zoomend",
        function(a) {
            setTimeout(function() {
                b.draw(a)
            },
            20)
        }) : a.addEventListener("zoomend",
        function(a) {
            b.draw(a)
        });
        a.addEventListener("maptypechange",
        function(a) {
            b.draw(a)
        });
        a.addEventListener("addoverlay",
        function(a) {
            a = a.target;
            if (a instanceof Q) b.ga[a.M] || (b.ga[a.M] = a);
            else {
                for (var d = o,
                e = 0,
                f = b.ld.length; e < f; e++) if (b.ld[e] === a) {
                    d = i;
                    break
                }
                d || b.ld.push(a)
            }
        });
        a.addEventListener("removeoverlay",
        function(a) {
            a = a.target;
            if (a instanceof Q) delete b.ga[a.M];
            else for (var d = 0,
            e = b.ld.length; d < e; d++) if (b.ld[d] === a) {
                b.ld.splice(d, 1);
                break
            }
        });
        a.addEventListener("clearoverlays",
        function() {
            this.oc();
            for (var a in b.ga) b.ga[a].z.jh && (b.ga[a].remove(), delete b.ga[a]);
            a = 0;
            for (var d = b.ld.length; a < d; a++) b.ld[a].jh != o && (b.ld[a].remove(), b.ld[a] = n, b.ld.splice(a, 1), a--, d--)
        });
        a.addEventListener("infowindowopen",
        function() {
            var a = this.Cb;
            a && (t.B.J(a.Ab), t.B.J(a.pb))
        });
        a.addEventListener("movestart",
        function() {
            this.We() && this.We().Yx()
        });
        a.addEventListener("moveend",
        function() {
            this.We() && this.We().Sx()
        })
    });
    Ib.prototype.draw = function() {
        if (B.Xk) {
            var a = B.Xk.Em(this.map);
            "canvas" == a.tb && a.canvas && a.iD(a.canvas.getContext("2d"))
        }
        for (var b in this.ga) this.ga[b].draw();
        t.Qb.Fc(this.ld,
        function(a) {
            a.draw()
        });
        this.map.F.La && this.map.F.La.ea();
        B.Xk && a.tv()
    };
    function Jb(a) {
        Q.call(this);
        a = a || {};
        this.z = {
            strokeColor: a.strokeColor || "#3a6bdb",
            jf: a.strokeWeight || 5,
            Ce: a.strokeOpacity || 0.65,
            strokeStyle: a.strokeStyle || "solid",
            jh: a.enableMassClear === o ? o: i,
            nh: n,
            Ui: n,
            ce: a.enableEditing === i ? i: o,
            XA: 15,
            zL: o,
            Dd: a.enableClicking === o ? o: i
        };
        0 >= this.z.jf && (this.z.jf = 5);
        if (0 > this.z.Ce || 1 < this.z.Ce) this.z.Ce = 0.65;
        if (0 > this.z.Ni || 1 < this.z.Ni) this.z.Ni = 0.65;
        "solid" != this.z.strokeStyle && "dashed" != this.z.strokeStyle && (this.z.strokeStyle = "solid");
        this.K = n;
        this.$q = new La(0, 0);
        this.Ad = [];
        this.rb = [];
        this.ta = {}
    }
    t.lang.ja(Jb, Q, "Graph");
    Jb.Bp = function(a) {
        var b = [];
        if (!a) return b;
        Ea(a) && t.Qb.Fc(a.split(";"),
        function(a) {
            a = a.split(",");
            b.push(new G(a[0], a[1]))
        });
        "[object Array]" == Object.prototype.toString.apply(a) && 0 < a.length && (b = a);
        return b
    };
    Jb.Xu = [0.09, 0.0050, 1.0E-4, 1.0E-5];
    t.extend(Jb.prototype, {
        initialize: function(a) {
            this.map = a;
            return n
        },
        draw: p(),
        $l: function(a) {
            this.Ad.length = 0;
            this.$ = Jb.Bp(a).slice(0);
            this.nf()
        },
        ed: function(a) {
            this.$l(a)
        },
        nf: function() {
            if (this.$) {
                var a = this;
                a.$q = new La;
                t.Qb.Fc(this.$,
                function(b) {
                    a.$q.extend(b)
                })
            }
        },
        Xc: s("$"),
        rj: function(a, b) {
            b && this.$[a] && (this.Ad.length = 0, this.$[a] = new G(b.lng, b.lat), this.nf())
        },
        setStrokeColor: function(a) {
            this.z.strokeColor = a
        },
        KI: function() {
            return this.z.strokeColor
        },
        qn: function(a) {
            0 < a && (this.z.jf = a)
        },
        Xz: function() {
            return this.z.jf
        },
        mn: function(a) {
            a == aa || (1 < a || 0 > a) || (this.z.Ce = a)
        },
        LI: function() {
            return this.z.Ce
        },
        pq: function(a) {
            1 < a || 0 > a || (this.z.Ni = a)
        },
        oI: function() {
            return this.z.Ni
        },
        nn: function(a) {
            "solid" != a && "dashed" != a || (this.z.strokeStyle = a)
        },
        Wz: function() {
            return this.z.strokeStyle
        },
        setFillColor: function(a) {
            this.z.fillColor = a || ""
        },
        nI: function() {
            return this.z.fillColor
        },
        xg: s("$q"),
        remove: function() {
            this.map && this.map.removeEventListener("onmousemove", this.ho);
            Q.prototype.remove.call(this);
            this.Ad.length = 0
        },
        ce: function() {
            if (! (2 > this.$.length)) {
                this.z.ce = i;
                var a = this;
                H.load("poly",
                function() {
                    a.ti()
                },
                i)
            }
        },
        AH: function() {
            this.z.ce = o;
            var a = this;
            H.load("poly",
            function() {
                a.bh()
            },
            i)
        }
    });
    function Kb(a) {
        Q.call(this);
        this.K = this.map = n;
        this.z = {
            width: 0,
            height: 0,
            ia: new K(0, 0),
            opacity: 1,
            background: "transparent",
            Qp: 1,
            FA: "#000",
            CJ: "solid",
            P: n
        };
        this.xB(a);
        this.P = this.z.P
    }
    t.lang.ja(Kb, Q, "Division");
    t.extend(Kb.prototype, {
        el: function() {
            var a = this.z,
            b = this.content,
            c = ['<div class="BMap_Division" style="position:absolute;'];
            c.push("width:" + a.width + "px;display:block;");
            c.push("overflow:hidden;");
            "none" != a.borderColor && c.push("border:" + a.Qp + "px " + a.CJ + " " + a.FA + ";");
            c.push("opacity:" + a.opacity + "; filter:(opacity=" + 100 * a.opacity + ")");
            c.push("background:" + a.background + ";");
            c.push('z-index:60;">');
            c.push(b);
            c.push("</div>");
            this.K = eb(this.map.Ye().Ku, c.join(""))
        },
        initialize: function(a) {
            this.map = a;
            this.el();
            this.K && t.D(this.K, F() ? "touchstart": "mousedown",
            function(a) {
                A(a)
            });
            return this.K
        },
        draw: function() {
            var a = this.map.df(this.z.P);
            this.z.ia = new K( - Math.round(this.z.width / 2) - Math.round(this.z.Qp), -Math.round(this.z.height / 2) - Math.round(this.z.Qp));
            this.K.style.left = a.x + this.z.ia.width + "px";
            this.K.style.top = a.y + this.z.ia.height + "px"
        },
        da: function() {
            return this.z.P
        },
        $L: function() {
            return this.map.ob(this.da())
        },
        ea: function(a) {
            this.z.P = a;
            this.draw()
        },
        EK: function(a, b) {
            this.z.width = Math.round(a);
            this.z.height = Math.round(b);
            this.K && (this.K.style.width = this.z.width + "px", this.K.style.height = this.z.height + "px", this.draw())
        }
    });
    function Lb(a, b, c) {
        a && b && (this.imageUrl = a, this.size = b, a = new K(Math.floor(b.width / 2), Math.floor(b.height / 2)), c = c || {},
        a = c.anchor || a, b = c.imageOffset || new K(0, 0), this.imageSize = c.imageSize, this.anchor = a, this.imageOffset = b, this.infoWindowAnchor = c.infoWindowAnchor || this.anchor, this.printImageUrl = c.printImageUrl || "")
    }
    t.extend(Lb.prototype, {
        IK: function(a) {
            a && (this.imageUrl = a)
        },
        TK: function(a) {
            a && (this.printImageUrl = a)
        },
        Oc: function(a) {
            a && (this.size = new K(a.width, a.height))
        },
        Nb: function(a) {
            a && (this.anchor = new K(a.width, a.height))
        },
        jn: function(a) {
            a && (this.imageOffset = new K(a.width, a.height))
        },
        KK: function(a) {
            a && (this.infoWindowAnchor = new K(a.width, a.height))
        },
        HK: function(a) {
            a && (this.imageSize = new K(a.width, a.height))
        },
        toString: ca("Icon")
    });
    function Mb(a, b) {
        t.lang.ra.call(this);
        this.content = a;
        this.map = n;
        b = b || {};
        this.z = {
            width: b.width || 0,
            height: b.height || 0,
            maxWidth: b.maxWidth || 600,
            ia: b.offset || new K(0, 0),
            title: b.title || "",
            Mu: b.maxContent || "",
            Se: b.enableMaximize || o,
            xm: b.enableAutoPan === o ? o: i,
            At: b.enableCloseOnClick === o ? o: i,
            margin: b.margin || [10, 10, 40, 10],
            Ys: b.collisions || [[10, 10], [10, 10], [10, 10], [10, 10]],
            gJ: o,
            QJ: b.onClosing || ca(i),
            Dt: b.enableMessage === o ? o: i,
            Ft: b.enableParano === i ? i: o,
            message: b.message,
            Gt: b.enableSearchTool === i ? i: o,
            Jp: b.headerContent || ""
        };
        if (0 != this.z.width && (220 > this.z.width && (this.z.width = 220), 730 < this.z.width)) this.z.width = 730;
        if (0 != this.z.height && (60 > this.z.height && (this.z.height = 60), 650 < this.z.height)) this.z.height = 650;
        if (0 != this.z.maxWidth && (220 > this.z.maxWidth && (this.z.maxWidth = 220), 730 < this.z.maxWidth)) this.z.maxWidth = 730;
        this.Hc = o;
        this.Zf = C.ba;
        this.Ia = n;
        var c = this;
        H.load("infowindow",
        function() {
            c.Zb()
        })
    }
    t.lang.ja(Mb, t.lang.ra, "InfoWindow");
    t.extend(Mb.prototype, {
        setWidth: function(a) { ! a && 0 != a || (isNaN(a) || 0 > a) || (0 != a && (220 > a && (a = 220), 730 < a && (a = 730)), this.z.width = a)
        },
        setHeight: function(a) { ! a && 0 != a || (isNaN(a) || 0 > a) || (0 != a && (60 > a && (a = 60), 650 < a && (a = 650)), this.z.height = a)
        },
        DB: function(a) { ! a && 0 != a || (isNaN(a) || 0 > a) || (0 != a && (220 > a && (a = 220), 730 < a && (a = 730)), this.z.maxWidth = a)
        },
        fc: function(a) {
            this.z.title = a
        },
        getTitle: function() {
            return this.z.title
        },
        Nc: ba("content"),
        zp: s("content"),
        kn: function(a) {
            this.z.Mu = a + ""
        },
        Mc: p(),
        xm: function() {
            this.z.xm = i
        },
        disableAutoPan: function() {
            this.z.xm = o
        },
        enableCloseOnClick: function() {
            this.z.At = i
        },
        disableCloseOnClick: function() {
            this.z.At = o
        },
        Se: function() {
            this.z.Se = i
        },
        op: function() {
            this.z.Se = o
        },
        show: function() {
            this.zb = i
        },
        J: function() {
            this.zb = o
        },
        close: function() {
            this.J()
        },
        Vp: function() {
            this.Hc = i
        },
        restore: function() {
            this.Hc = o
        },
        Cg: function() {
            return this.Aa()
        },
        Aa: ca(o),
        da: function() {
            if (this.Ia && this.Ia.da) return this.Ia.da()
        },
        Xe: function() {
            return this.z.ia
        }
    });
    ra.prototype.Tb = function(a, b) {
        if (a instanceof Mb && b instanceof G) {
            var c = this.F;
            c.fj ? c.fj.ea(b) : (c.fj = new S(b, {
                icon: new Lb(C.ba + "blank.gif", {
                    width: 1,
                    height: 1
                }),
                offset: new K(0, 0),
                clickable: o
            }), c.fj.YD = 1);
            this.Xa(c.fj);
            c.fj.Tb(a)
        }
    };
    ra.prototype.oc = function() {
        var a = this.F.La || this.F.Xh;
        a && a.Ia && a.Ia.oc()
    };
    Q.prototype.Tb = function(a) {
        this.map && (this.map.oc(), a.zb = i, this.map.F.Xh = a, a.Ia = this, t.lang.ra.call(a, a.M))
    };
    Q.prototype.oc = function() {
        this.map && this.map.F.Xh && (this.map.F.Xh.zb = o, t.lang.mp(this.map.F.Xh.M), this.map.F.Xh = n)
    };
    function Nb(a, b) {
        Q.call(this);
        this.content = a;
        this.K = this.map = n;
        b = b || {};
        this.z = {
            width: 0,
            ia: b.offset || new K(0, 0),
            Nk: {
                backgroundColor: "#fff",
                border: "1px solid #f00",
                padding: "1px",
                whiteSpace: "nowrap",
                font: "12px " + C.fontFamily,
                zIndex: "80",
                MozUserSelect: "none"
            },
            position: b.position || n,
            jh: b.enableMassClear === o ? o: i,
            Dd: i
        };
        0 > this.z.width && (this.z.width = 0);
        lb(b.enableClicking) && (this.z.Dd = b.enableClicking);
        this.P = this.z.position;
        var c = this;
        H.load("marker",
        function() {
            c.Zb()
        })
    }
    t.lang.ja(Nb, Q, "Label");
    t.extend(Nb.prototype, {
        da: function() {
            return this.vo ? this.vo.da() : this.P
        },
        ea: function(a) {
            a instanceof G && !this.Ep() && (this.P = this.z.position = new G(a.lng, a.lat))
        },
        Nc: ba("content"),
        NK: function(a) {
            0 <= a && 1 >= a && (this.z.opacity = a)
        },
        dd: function(a) {
            a instanceof K && (this.z.ia = new K(a.width, a.height))
        },
        Xe: function() {
            return this.z.ia
        },
        wc: function(a) {
            a = a || {};
            this.z.Nk = t.extend(this.z.Nk, a)
        },
        Ih: function(a) {
            return this.wc(a)
        },
        fc: function(a) {
            this.z.title = a || ""
        },
        getTitle: function() {
            return this.z.title
        },
        CB: function(a) {
            this.P = (this.vo = a) ? this.z.position = a.da() : this.z.position = n
        },
        Ep: function() {
            return this.vo || n
        },
        zp: s("content")
    });
    var Ob = new Lb(C.ba + "marker_red_sprite.png", new K(19, 25), {
        anchor: new K(10, 25),
        infoWindowAnchor: new K(10, 0)
    }),
    Pb = new Lb(C.ba + "marker_red_sprite.png", new K(20, 11), {
        anchor: new K(6, 11),
        imageOffset: new K( - 19, -13)
    });
    function S(a, b) {
        Q.call(this);
        b = b || {};
        this.P = a;
        this.hl = this.map = n;
        this.z = {
            ia: b.offset || new K(0, 0),
            Ze: b.icon || Ob,
            Jh: Pb,
            title: b.title || "",
            label: n,
            Hy: b.baseZIndex || 0,
            Dd: i,
            aO: o,
            Eu: o,
            jh: b.enableMassClear === o ? o: i,
            Hb: o,
            qB: b.raiseOnDrag === i ? i: o,
            uB: o,
            qc: b.draggingCursor || C.qc
        };
        b.icon && !b.shadow && (this.z.Jh = n);
        b.enableDragging && (this.z.Hb = b.enableDragging);
        lb(b.enableClicking) && (this.z.Dd = b.enableClicking);
        var c = this;
        H.load("marker",
        function() {
            c.Zb()
        })
    }
    S.Pn = Hb.Nm( - 90) + 1E6;
    S.Wv = S.Pn + 1E6;
    t.lang.ja(S, Q, "Marker");
    t.extend(S.prototype, {
        Uf: function(a) {
            a instanceof Lb && (this.z.Ze = a)
        },
        Pz: function() {
            return this.z.Ze
        },
        tq: function(a) {
            a instanceof Lb && (this.z.Jh = a)
        },
        getShadow: function() {
            return this.z.Jh
        },
        pj: function(a) {
            this.z.label = a || n
        },
        Qz: function() {
            return this.z.label
        },
        Hb: function() {
            this.z.Hb = i
        },
        it: function() {
            this.z.Hb = o
        },
        da: s("P"),
        ea: function(a) {
            a instanceof G && (this.P = new G(a.lng, a.lat))
        },
        Kk: function(a, b) {
            this.z.Eu = !!a;
            a && (this.rw = b || 0)
        },
        fc: function(a) {
            this.z.title = a + ""
        },
        getTitle: function() {
            return this.z.title
        },
        dd: function(a) {
            a instanceof K && (this.z.ia = a)
        },
        Xe: function() {
            return this.z.ia
        },
        oj: ba("hl")
    });
    function Qb(a, b) {
        Jb.call(this, b);
        b = b || {};
        this.z.Ni = b.fillOpacity ? b.fillOpacity: 0.65;
        this.z.fillColor = "" == b.fillColor ? "": b.fillColor ? b.fillColor: "#fff";
        this.ed(a);
        var c = this;
        H.load("poly",
        function() {
            c.Zb()
        })
    }
    t.lang.ja(Qb, Jb, "Polygon");
    t.extend(Qb.prototype, {
        ed: function(a, b) {
            this.Xj = Jb.Bp(a).slice(0);
            var c = Jb.Bp(a).slice(0);
            1 < c.length && c.push(new G(c[0].lng, c[0].lat));
            Jb.prototype.ed.call(this, c, b)
        },
        rj: function(a, b) {
            this.Xj[a] && (this.Xj[a] = new G(b.lng, b.lat), this.$[a] = new G(b.lng, b.lat), 0 == a && !this.$[0].bb(this.$[this.$.length - 1]) && (this.$[this.$.length - 1] = new G(b.lng, b.lat)), this.nf())
        },
        Xc: function() {
            var a = this.Xj;
            0 == a.length && (a = this.$);
            return a
        }
    });
    function Sb(a, b) {
        Jb.call(this, b);
        this.$l(a);
        var c = this;
        H.load("poly",
        function() {
            c.Zb()
        })
    }
    t.lang.ja(Sb, Jb, "Polyline");
    function Tb(a, b, c) {
        this.P = a;
        this.Ea = Math.abs(b);
        Qb.call(this, [], c)
    }
    Tb.Xu = [0.01, 1.0E-4, 1.0E-5, 4.0E-6];
    t.lang.ja(Tb, Qb, "Circle");
    t.extend(Tb.prototype, {
        initialize: function(a) {
            this.map = a;
            this.$ = this.eo(this.P, this.Ea);
            this.nf();
            return n
        },
        Da: s("P"),
        ze: function(a) {
            a && (this.P = a)
        },
        DI: s("Ea"),
        sq: function(a) {
            this.Ea = Math.abs(a)
        },
        eo: function(a, b) {
            if (!a || !b || !this.map) return [];
            for (var c = [], d = b / 6378800, e = Math.PI / 180 * a.lat, f = Math.PI / 180 * a.lng, g = 0; 360 > g; g += 9) {
                var j = Math.PI / 180 * g,
                k = Math.asin(Math.sin(e) * Math.cos(d) + Math.cos(e) * Math.sin(d) * Math.cos(j)),
                j = new G(((f - Math.atan2(Math.sin(j) * Math.sin(d) * Math.cos(e), Math.cos(d) - Math.sin(e) * Math.sin(k)) + Math.PI) % (2 * Math.PI) - Math.PI) * (180 / Math.PI), k * (180 / Math.PI));
                c.push(j)
            }
            d = c[0];
            c.push(new G(d.lng, d.lat));
            return c
        }
    });
    var Ub = {};
    function Vb(a) {
        this.map = a;
        this.yk = [];
        this.ee = [];
        this.Ee = [];
        this.QG = 300;
        this.dv = 0;
        this.ve = {};
        this.sg = {};
        this.cf = 0;
        this.zu = i;
        this.dz = {};
        this.uo = this.ql(1);
        this.Cd = this.ql(2);
        this.Pl = this.ql(3);
        a.platform.appendChild(this.uo);
        a.platform.appendChild(this.Cd);
        a.platform.appendChild(this.Pl)
    }
    B.xd(function(a) {
        var b = new Vb(a);
        b.la();
        a.qb = b
    });
    t.extend(Vb.prototype, {
        la: function() {
            var a = this,
            b = a.map;
            b.addEventListener("loadcode",
            function() {
                a.Rp()
            });
            b.addEventListener("addtilelayer",
            function(b) {
                a.Ne(b)
            });
            b.addEventListener("removetilelayer",
            function(b) {
                a.hf(b)
            });
            b.addEventListener("setmaptype",
            function(b) {
                a.Eg(b)
            });
            b.addEventListener("zoomstartcode",
            function(b) {
                a.ac(b)
            });
            b.addEventListener("setcustomstyles",
            function() {
                a.bf(i)
            })
        },
        Rp: function() {
            var a = this;
            if (t.N.V) try {
                document.execCommand("BackgroundImageCache", o, i)
            } catch(b) {}
            this.loaded || a.Mp();
            a.bf();
            this.loaded || (this.loaded = i, H.load("tile",
            function() {
                a.QC()
            }))
        },
        Mp: function() {
            for (var a = this.map.ha().Ll, b = 0; b < a.length; b++) {
                var c = new Wb;
                t.extend(c, a[b]);
                this.yk.push(c);
                c.la(this.map, this.uo)
            }
        },
        ql: function(a) {
            var b = J("div");
            b.style.position = "absolute";
            b.style.overflow = "visible";
            b.style.left = b.style.top = "0";
            b.style.zIndex = a;
            return b
        },
        Ge: function() {
            this.cf--;
            var a = this;
            this.zu && (this.map.dispatchEvent(new L("onfirsttileloaded")), this.zu = o);
            0 == this.cf && (this.fg && (clearTimeout(this.fg), this.fg = n), this.fg = setTimeout(function() {
                if (a.cf == 0) {
                    a.map.dispatchEvent(new L("ontilesloaded"));
                    a.zu = i
                }
                a.fg = n
            },
            80))
        },
        nu: function(a, b) {
            return "TILE-" + b.M + "-" + a[0] + "-" + a[1] + "-" + a[2]
        },
        Kp: function(a) {
            var b = a.Wa;
            b && db(b) && b.parentNode.removeChild(b);
            delete this.ve[a.name];
            a.loaded || (Xb(a), a.Wa = n, a.gj = n)
        },
        qk: function(a, b, c) {
            var d = this.map,
            e = d.ha(),
            f = d.oa,
            g = d.Mb,
            j = e.Ib(f),
            k = this.Jz(),
            l = k[0],
            m = k[1],
            q = k[2],
            u = k[3],
            v = k[4],
            c = "undefined" != typeof c ? c: 0,
            e = e.k.Bb,
            k = d.M.replace(/^TANGRAM_/, "");
            for (this.Wf ? this.Wf.length = 0 : this.Wf = []; l < q; l++) for (var w = m; w < u; w++) {
                var z = l,
                E = w;
                this.Wf.push([z, E]);
                z = k + "_" + b + "_" + z + "_" + E + "_" + f;
                this.dz[z] = z
            }
            this.Wf.sort(function(a) {
                return function(b, c) {
                    return 0.4 * Math.abs(b[0] - a[0]) + 0.6 * Math.abs(b[1] - a[1]) - (0.4 * Math.abs(c[0] - a[0]) + 0.6 * Math.abs(c[1] - a[1]))
                }
            } ([v[0] - 1, v[1] - 1]));
            g = [Math.round( - g.lng / j), Math.round(g.lat / j)];
            l = -d.offsetY + d.height / 2;
            a.style.left = -d.offsetX + d.width / 2 + "px";
            a.style.top = l + "px";
            this.wi ? this.wi.length = 0 : this.wi = [];
            l = 0;
            for (d = a.childNodes.length; l < d; l++) w = a.childNodes[l],
            w.qx = o,
            this.wi.push(w);
            if (l = this.Ru) for (var x in l) delete l[x];
            else this.Ru = {};
            this.xi ? this.xi.length = 0 : this.xi = [];
            l = 0;
            for (d = this.Wf.length; l < d; l++) {
                x = this.Wf[l][0];
                j = this.Wf[l][1];
                w = 0;
                for (m = this.wi.length; w < m; w++) if (q = this.wi[w], q.id == k + "_" + b + "_" + x + "_" + j + "_" + f) {
                    q.qx = i;
                    this.Ru[q.id] = q;
                    break
                }
            }
            l = 0;
            for (d = this.wi.length; l < d; l++) q = this.wi[l],
            q.qx || this.xi.push(q);
            this.Fv = [];
            w = (e + c) * this.map.G.devicePixelRatio;
            l = 0;
            for (d = this.Wf.length; l < d; l++) x = this.Wf[l][0],
            j = this.Wf[l][1],
            u = x * e + g[0] - c / 2,
            v = ( - 1 - j) * e + g[1] - c / 2,
            z = k + "_" + b + "_" + x + "_" + j + "_" + f,
            m = this.Ru[z],
            q = n,
            m ? (q = m.style, q.left = u + "px", q.top = v + "px", m.He || this.Fv.push([x, j, m])) : (0 < this.xi.length ? (m = this.xi.shift(), m.getContext("2d").clearRect( - c / 2, -c / 2, w, w), q = m.style) : (m = document.createElement("canvas"), q = m.style, q.position = "absolute", q.width = e + c + "px", q.height = e + c + "px", this.vA() && (q.WebkitTransform = "scale(1.001)"), m.setAttribute("width", w), m.setAttribute("height", w), a.appendChild(m)), m.id = z, q.left = u + "px", q.top = v + "px", -1 < z.indexOf("bg") && (u = "#F3F1EC", this.map.G.rc && this.map.G.rc.style && (u = this.map.G.Gf[this.map.G.rc.style].backColor), q.background = u ? u: ""), this.Fv.push([x, j, m])),
            m.style.visibility = "";
            l = 0;
            for (d = this.xi.length; l < d; l++) this.xi[l].style.visibility = "hidden";
            return this.Fv
        },
        vA: function() {
            return /M040/i.test(navigator.userAgent)
        },
        Jz: function() {
            var a = this.map,
            b = a.ha(),
            c = a.oa;
            b.Ib(c);
            var c = b.aA(c),
            d = a.Mb,
            e = Math.ceil(d.lng / c),
            f = Math.ceil(d.lat / c),
            b = b.k.Bb,
            c = [e, f, (d.lng - e * c) / c * b, (d.lat - f * c) / c * b];
            return [c[0] - Math.ceil((a.width / 2 - c[2]) / b), c[1] - Math.ceil((a.height / 2 - c[3]) / b), c[0] + Math.ceil((a.width / 2 + c[2]) / b), c[1] + Math.ceil((a.height / 2 + c[3]) / b), c]
        },
        YK: function(a, b, c, d) {
            var e = this;
            e.uM = b;
            var f = this.map.ha(),
            g = e.nu(a, c),
            j = f.k.Bb,
            b = [a[0] * j + b[0], ( - 1 - a[1]) * j + b[1]],
            k = this.ve[g];
            k && k.Wa ? (bb(k.Wa, b), d && (d = new O(a[0], a[1]), f = this.map.G.rc ? this.map.G.rc.style: "normal", d = c.getTilesUrl(d, a[2], f), k.loaded = o, Yb(k, d)), k.loaded ? this.Ge() : Zb(k,
            function() {
                e.Ge()
            })) : (k = this.sg[g]) && k.Wa ? (c.hb.insertBefore(k.Wa, c.hb.lastChild), this.ve[g] = k, bb(k.Wa, b), d && (d = new O(a[0], a[1]), f = this.map.G.rc ? this.map.G.rc.style: "normal", d = c.getTilesUrl(d, a[2], f), k.loaded = o, Yb(k, d)), k.loaded ? this.Ge() : Zb(k,
            function() {
                e.Ge()
            })) : (k = j * Math.pow(2, f.Ti() - a[2]), new G(a[0] * k, a[1] * k), d = new O(a[0], a[1]), f = this.map.G.rc ? this.map.G.rc.style: "normal", d = c.getTilesUrl(d, a[2], f), k = new $b(this, d, b, a, c), Zb(k,
            function() {
                e.Ge()
            }), ac(k), this.ve[g] = k)
        },
        Ge: function() {
            this.cf--;
            var a = this;
            0 == this.cf && (this.fg && (clearTimeout(this.fg), this.fg = n), this.fg = setTimeout(function() {
                if (a.cf == 0) {
                    a.map.dispatchEvent(new L("ontilesloaded"));
                    if (pa) {
                        if (ma && na && oa) {
                            var b = Ga(),
                            c = a.map.xb();
                            setTimeout(function() {
                                va(5030, {
                                    load_script_time: na - ma,
                                    load_tiles_time: b - oa,
                                    map_width: c.width,
                                    map_height: c.height,
                                    map_size: c.width * c.height
                                })
                            },
                            1E4);
                            qa.dc("img_fisrt_loaded");
                            qa.dc("map_width", c.width);
                            qa.dc("map_height", c.height);
                            qa.dc("map_size", c.width * c.height);
                            qa.kq()
                        }
                        pa = o
                    }
                }
                a.fg = n
            },
            80))
        },
        nu: function(a, b) {
            return this.map.ha() === ua ? "TILE-" + b.M + "-" + this.map.cp + "-" + a[0] + "-" + a[1] + "-" + a[2] : "TILE-" + b.M + "-" + a[0] + "-" + a[1] + "-" + a[2]
        },
        Kp: function(a) {
            var b = a.Wa;
            b && (bc(b), db(b) && b.parentNode.removeChild(b));
            delete this.ve[a.name];
            a.loaded || (bc(b), Xb(a), a.Wa = n, a.gj = n)
        },
        bf: function(a) {
            var b = this;
            if (b.map.ha() == ua) H.load("coordtrans",
            function() {
                b.map.wb || (b.map.wb = ua.lh(b.map.fk), b.map.cp = ua.Iz(b.map.wb));
                b.xx()
            },
            i);
            else {
                if (a && a) for (var c in this.sg) delete this.sg[c];
                b.xx(a)
            }
        },
        xx: function(a) {
            for (var b = this.yk.concat(this.ee), c = b.length, d = 0; d < c; d++) {
                var e = b[d];
                if (e.tc && l.oa < e.tc) break;
                if (e.ap) {
                    var f = this.hb = e.hb;
                    if (a) {
                        var g = f;
                        if (g && g.childNodes) for (var j = g.childNodes.length,
                        k = j - 1; 0 <= k; k--) j = g.childNodes[k],
                        g.removeChild(j),
                        j = n
                    }
                    if (this.map.Kb()) {
                        this.Cd.style.display = "block";
                        f.style.display = "none";
                        this.map.dispatchEvent(new L("vectorchanged"), {
                            isvector: i
                        });
                        continue
                    } else f.style.display = "block",
                    this.Cd.style.display = "none",
                    this.map.dispatchEvent(new L("vectorchanged"), {
                        isvector: o
                    })
                }
                if (! (e.wk && !this.map.Kb() || e.uA && this.map.Kb())) {
                    var l = this.map,
                    m = l.ha(),
                    f = m.Vi(),
                    j = l.oa,
                    q = l.Mb;
                    m == ua && q.bb(new G(0, 0)) && (q = l.Mb = f.ej(l.Pe, l.wb));
                    var u = m.Ib(j),
                    j = m.aA(j),
                    f = Math.ceil(q.lng / j),
                    g = Math.ceil(q.lat / j),
                    v = m.k.Bb,
                    j = [f, g, (q.lng - f * j) / j * v, (q.lat - g * j) / j * v],
                    k = j[0] - Math.ceil((l.width / 2 - j[2]) / v),
                    f = j[1] - Math.ceil((l.height / 2 - j[3]) / v),
                    g = j[0] + Math.ceil((l.width / 2 + j[2]) / v),
                    w = 0;
                    m === ua && 15 == l.T() && (w = 1);
                    m = j[1] + Math.ceil((l.height / 2 + j[3]) / v) + w;
                    this.Ey = new G(q.lng, q.lat);
                    var z = this.ve,
                    v = -this.Ey.lng / u,
                    w = this.Ey.lat / u,
                    u = [Math.ceil(v), Math.ceil(w)],
                    q = l.T(),
                    E;
                    for (E in z) {
                        var x = z[E],
                        I = x.info; (I[2] != q || I[2] == q && (k > I[0] || g <= I[0] || f > I[1] || m <= I[1])) && this.Kp(x)
                    }
                    z = -l.offsetX + l.width / 2;
                    x = -l.offsetY + l.height / 2;
                    e.hb && (e.hb.style.left = Math.ceil(v + z) - u[0] + "px", e.hb.style.top = Math.ceil(w + x) - u[1] + "px");
                    v = [];
                    for (l.Gs = []; k < g; k++) for (w = f; w < m; w++) v.push([k, w]),
                    l.Gs.push({
                        x: k,
                        y: w
                    });
                    v.sort(function(a) {
                        return function(b, c) {
                            return 0.4 * Math.abs(b[0] - a[0]) + 0.6 * Math.abs(b[1] - a[1]) - (0.4 * Math.abs(c[0] - a[0]) + 0.6 * Math.abs(c[1] - a[1]))
                        }
                    } ([j[0] - 1, j[1] - 1]));
                    if (!e.QE) {
                        this.cf += v.length;
                        k = 0;
                        for (j = v.length; k < j; k++) this.YK([v[k][0], v[k][1], q], u, e, a)
                    }
                }
            }
        },
        Ne: function(a) {
            var b = this,
            c = a.target,
            a = b.map.Kb();
            if (c instanceof Ja) a && !c.cj && (c.la(this.map, this.Cd), c.cj = i);
            else if (c.De && this.map.Ne(c.De), c.wk) {
                for (a = 0; a < b.Ee.length; a++) if (b.Ee[a] == c) return;
                H.load("vector",
                function() {
                    c.la(b.map, b.Cd);
                    b.Ee.push(c)
                },
                i)
            } else {
                for (a = 0; a < b.ee.length; a++) if (b.ee[a] == c) return;
                c.la(this.map, this.Pl);
                b.ee.push(c)
            }
        },
        hf: function(a) {
            var a = a.target,
            b = this.map.Kb();
            if (a instanceof Ja) b && a.cj && (a.remove(), a.cj = o);
            else {
                a.De && this.map.hf(a.De);
                if (a.wk) for (var b = 0,
                c = this.Ee.length; b < c; b++) a == this.Ee[b] && this.Ee.splice(b, 1);
                else {
                    b = 0;
                    for (c = this.ee.length; b < c; b++) a == this.ee[b] && this.ee.splice(b, 1)
                }
                a.remove()
            }
        },
        Eg: function() {
            for (var a = this.yk,
            b = 0,
            c = a.length; b < c; b++) a[b].remove();
            delete this.hb;
            this.yk = [];
            this.sg = this.ve = {};
            this.Mp();
            this.bf()
        },
        ac: function() {
            var a = this;
            a.jc && t.B.J(a.jc);
            setTimeout(function() {
                a.bf();
                a.map.dispatchEvent(new L("onzoomend"))
            },
            10)
        },
        UN: p()
    });
    function $b(a, b, c, d, e) {
        this.gj = a;
        this.position = c;
        this.Tn = [];
        this.name = a.nu(d, e);
        this.info = d;
        this.ly = e.Vm();
        d = J("img");
        cb(d);
        d.Fz = o;
        var f = d.style,
        a = a.map.ha();
        f.position = "absolute";
        f.border = "none";
        f.width = a.k.Bb + "px";
        f.height = a.k.Bb + "px";
        f.left = c[0] + "px";
        f.top = c[1] + "px";
        f.maxWidth = "none";
        this.Wa = d;
        this.src = b;
        cc && (this.Wa.style.opacity = 0);
        var g = this;
        this.Wa.onload = function() {
            g.loaded = i;
            if (g.gj) {
                var a = g.gj,
                b = a.sg;
                if (!b[g.name]) {
                    a.dv++;
                    b[g.name] = g
                }
                if (g.Wa && !db(g.Wa) && e.hb) {
                    e.hb.appendChild(g.Wa);
                    if (t.N.V <= 6 && t.N.V > 0 && g.ly) g.Wa.style.cssText = g.Wa.style.cssText + (';filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + g.src + '",sizingMethod=scale);')
                }
                var c = a.dv - a.QG,
                d;
                for (d in b) {
                    if (c <= 0) break;
                    if (!a.ve[d]) {
                        b[d].gj = n;
                        var f = b[d].Wa;
                        if (f && f.parentNode) {
                            f.parentNode.removeChild(f);
                            bc(f)
                        }
                        f = n;
                        b[d].Wa = n;
                        delete b[d];
                        a.dv--;
                        c--
                    }
                }
                cc && new Ya({
                    Vc: 20,
                    duration: 200,
                    va: function(a) {
                        if (g.Wa && g.Wa.style) g.Wa.style.opacity = a * 1
                    },
                    finish: function() {
                        g.Wa && g.Wa.style && delete g.Wa.style.opacity
                    }
                });
                Xb(g)
            }
        };
        this.Wa.onerror = function() {
            Xb(g);
            if (g.gj) {
                var a = g.gj.map.ha();
                if (a.k.It) {
                    g.error = i;
                    g.Wa.src = a.k.It;
                    g.Wa && !db(g.Wa) && e.hb.appendChild(g.Wa)
                }
            }
        };
        d = n
    }
    function Zb(a, b) {
        a.Tn.push(b)
    }
    function ac(a) {
        a.Wa.src = 0 < t.N.V && 6 >= t.N.V && a.ly ? C.ba + "blank.gif": "" !== a.src && a.Wa.src == a.src ? a.src + "&t = " + Date.now() : a.src
    }
    function Xb(a) {
        for (var b = 0; b < a.Tn.length; b++) a.Tn[b]();
        a.Tn.length = 0
    }
    function bc(a) {
        if (a) {
            a.onload = a.onerror = n;
            var b = a.attributes,
            c, d, e;
            if (b) {
                d = b.length;
                for (c = 0; c < d; c += 1) e = b[c].name,
                Da(a[e]) && (a[e] = n)
            }
            if (b = a.children) {
                d = b.length;
                for (c = 0; c < d; c += 1) bc(a.children[c])
            }
        }
    }
    function Yb(a, b) {
        a.src = b;
        ac(a)
    }
    var cc = !t.N.V || 8 < t.N.V;
    function Wb(a) {
        this.Ak = a || {};
        this.iH = this.Ak.copyright || n;
        this.xL = this.Ak.transparentPng || o;
        this.ap = this.Ak.baseLayer || o;
        this.zIndex = this.Ak.zIndex || 0;
        this.M = Wb.EE++
    }
    Wb.EE = 0;
    t.lang.ja(Wb, t.lang.ra, "TileLayer");
    t.extend(Wb.prototype, {
        la: function(a, b) {
            this.ap && (this.zIndex = -100);
            this.map = a;
            if (!this.hb) {
                var c = J("div"),
                d = c.style;
                d.position = "absolute";
                d.overflow = "visible";
                d.zIndex = this.zIndex;
                d.left = Math.ceil( - a.offsetX + a.width / 2) + "px";
                d.top = Math.ceil( - a.offsetY + a.height / 2) + "px";
                b.appendChild(c);
                this.hb = c
            }
            c = a.ha();
            a.uh() && c == sa && (c.k.Bb = 128, d = function(a) {
                return Math.pow(2, 18 - a) * 2
            },
            c.Ib = d, c.k.bd.Ib = d)
        },
        remove: function() {
            this.hb && this.hb.parentNode && (this.hb.innerHTML = "", this.hb.parentNode.removeChild(this.hb));
            delete this.hb
        },
        Vm: s("xL"),
        getTilesUrl: function(a, b) {
            var c = "";
            this.Ak.tileUrlTemplate && (c = this.Ak.tileUrlTemplate.replace(/\{X\}/, a.x), c = c.replace(/\{Y\}/, a.y), c = c.replace(/\{Z\}/, b));
            return c
        },
        Qi: s("iH"),
        ha: function() {
            return this.Db || sa
        }
    });
    function dc(a, b) {
        mb(a) ? b = a || {}: (b = b || {},
        b.databoxId = a);
        this.k = {
            ez: b.databoxId,
            Ue: b.geotableId,
            jq: b.q || "",
            An: b.tags || "",
            filter: b.filter || "",
            yq: b.sortby || "",
            dL: b.styleId || "",
            ui: b.ak || la,
            $o: b.age || 36E5,
            zIndex: 11,
            AJ: "VectorCloudLayer",
            vh: b.hotspotName || "vector_md_" + (1E5 * Math.random()).toFixed(0),
            xG: "LBS\u4e91\u9ebb\u70b9\u5c42"
        };
        this.wk = i;
        Wb.call(this, this.k);
        this.uH = "http://api.map.baidu.com/geosearch/detail/";
        this.vH = "http://api.map.baidu.com/geosearch/v2/detail/";
        this.sk = {}
    }
    t.ja(dc, Wb, "VectorCloudLayer");
    function ec(a) {
        a = a || {};
        this.k = t.extend(a, {
            zIndex: 1,
            AJ: "VectorTrafficLayer",
            xG: "\u77e2\u91cf\u8def\u51b5\u5c42"
        });
        this.wk = i;
        Wb.call(this, this.k);
        this.uL = "http://or.map.bdimg.com:8080/gvd/?qt=lgvd&styles=pl&layers=tf";
        this.Sc = {
            "0": [2, 1354709503, 2, 2, 0, [], 0, 0],
            1 : [2, 1354709503, 3, 2, 0, [], 0, 0],
            10 : [2, -231722753, 2, 2, 0, [], 0, 0],
            11 : [2, -231722753, 3, 2, 0, [], 0, 0],
            12 : [2, -231722753, 4, 2, 0, [], 0, 0],
            13 : [2, -231722753, 5, 2, 0, [], 0, 0],
            14 : [2, -231722753, 6, 2, 0, [], 0, 0],
            15 : [2, -1, 4, 0, 0, [], 0, 0],
            16 : [2, -1, 5.5, 0, 0, [], 0, 0],
            17 : [2, -1, 7, 0, 0, [], 0, 0],
            18 : [2, -1, 8.5, 0, 0, [], 0, 0],
            19 : [2, -1, 10, 0, 0, [], 0, 0],
            2 : [2, 1354709503, 4, 2, 0, [], 0, 0],
            3 : [2, 1354709503, 5, 2, 0, [], 0, 0],
            4 : [2, 1354709503, 6, 2, 0, [], 0, 0],
            5 : [2, -6350337, 2, 2, 0, [], 0, 0],
            6 : [2, -6350337, 3, 2, 0, [], 0, 0],
            7 : [2, -6350337, 4, 2, 0, [], 0, 0],
            8 : [2, -6350337, 5, 2, 0, [], 0, 0],
            9 : [2, -6350337, 6, 2, 0, [], 0, 0]
        }
    }
    t.ja(ec, Wb, "VectorTrafficLayer");
    function Ja(a) {
        this.RG = ["http://or.map.bdimg.com:8080/gvd/?", "http://or0.map.bdimg.com:8080/gvd/?", "http://or1.map.bdimg.com:8080/gvd/?", "http://or2.map.bdimg.com:8080/gvd/?", "http://or3.map.bdimg.com:8080/gvd/?"];
        this.k = {
            Cz: o
        };
        for (var b in a) this.k[b] = a[b];
        this.Bf = this.Lg = this.kc = this.C = this.A = n;
        this.DA = 0;
        var c = this;
        H.load("vector",
        function() {
            c.kd()
        })
    }
    t.extend(Ja.prototype, {
        la: function(a, b) {
            this.A = a;
            this.C = b
        },
        remove: function() {
            this.C = this.A = n
        }
    });
    function fc(a) {
        Wb.call(this, a);
        this.k = a || {};
        this.uA = i;
        this.De = new ec;
        this.De.Bq = this;
        if (this.k.predictDate) {
            if (1 > this.k.predictDate.weekday || 7 < this.k.predictDate.weekday) this.k.predictDate = 1;
            if (0 > this.k.predictDate.hour || 23 < this.k.predictDate.hour) this.k.predictDate.hour = 0
        }
        this.iG = "http://its.map.baidu.com:8002/traffic/"
    }
    fc.prototype = new Wb;
    fc.prototype.la = function(a, b) {
        Wb.prototype.la.call(this, a, b);
        this.A = a
    };
    fc.prototype.Vm = ca(i);
    fc.prototype.getTilesUrl = function(a, b) {
        var c = "";
        this.k.predictDate ? c = "HistoryService?day=" + (this.k.predictDate.weekday - 1) + "&hour=" + this.k.predictDate.hour + "&t=" + (new Date).getTime() + "&": (c = "TrafficTileService?time=" + (new Date).getTime() + "&", this.A.uh() || (c += "label=web2D&v=016&"));
        return (this.iG + c + "level=" + b + "&x=" + a.x + "&y=" + a.y).replace(/-(\d+)/gi, "M$1")
    };
    var gc = ["http://g0.api.map.baidu.com/georender/gss", "http://g1.api.map.baidu.com/georender/gss", "http://g2.api.map.baidu.com/georender/gss", "http://g3.api.map.baidu.com/georender/gss"];
    function Ta(a, b) {
        Wb.call(this);
        var c = this;
        this.uA = i;
        var d = o;
        try {
            document.createElement("canvas").getContext("2d"),
            d = i
        } catch(e) {
            d = o
        }
        d && (this.De = new dc(a, b), this.De.Bq = this);
        mb(a) ? b = a || {}: (c.sl = a, b = b || {});
        b.geotableId && (c.me = b.geotableId);
        b.databoxId && (c.sl = b.databoxId);
        c.Dc = {
            eJ: "http://api.map.baidu.com/geosearch/detail/",
            fJ: "http://api.map.baidu.com/geosearch/v2/detail/",
            $o: b.age || 36E5,
            jq: b.q || "",
            mL: "png",
            cN: [5, 5, 5, 5],
            zJ: {
                backgroundColor: "#FFFFD5",
                borderColor: "#808080"
            },
            ui: b.ak || la,
            An: b.tags || "",
            filter: b.filter || "",
            yq: b.sortby || "",
            vh: b.hotspotName || "tile_md_" + (1E5 * Math.random()).toFixed(0)
        };
        H.load("clayer",
        function() {
            c.Ac()
        })
    }
    Ta.prototype = new Wb;
    Ta.prototype.la = function(a, b) {
        Wb.prototype.la.call(this, a, b);
        this.A = a
    };
    Ta.prototype.getTilesUrl = function(a, b) {
        var c = a.x,
        d = a.y,
        e = this.Dc,
        c = gc[Math.abs(c + d) % gc.length] + "/image?grids=" + c + "_" + d + "_" + b + "&q=" + e.jq + "&tags=" + e.An + "&filter=" + e.filter + "&sortby=" + e.yq + "&ak=" + this.Dc.ui + "&age=" + e.$o + "&format=" + e.mL;
        this.me ? c += "&geotable_id=" + this.me: this.sl && (c += "&databox_id=" + this.sl);
        return c
    };
    Ta.KF = /^point\(|\)$/ig;
    Ta.LF = /\s+/;
    Ta.NF = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
    function hc(a, b, c) {
        this.Nl = a;
        this.Ll = b instanceof Wb ? [b] : b.slice(0);
        c = c || {};
        this.k = {
            nL: c.tips || "",
            Hu: "",
            tc: c.minZoom || 3,
            Zc: c.maxZoom || 18,
            cJ: c.minZoom || 3,
            bJ: c.maxZoom || 18,
            Bb: 256,
            lL: c.textColor || "black",
            It: c.errorImageUrl || "",
            bd: c.projection || new P
        };
        1 <= this.Ll.length && (this.Ll[0].ap = i);
        t.extend(this.k, c)
    }
    t.extend(hc.prototype, {
        getName: s("Nl"),
        Mm: function() {
            return this.k.nL
        },
        RM: function() {
            return this.k.Hu
        },
        RI: function() {
            return this.Ll[0]
        },
        aN: s("Ll"),
        SI: function() {
            return this.k.Bb
        },
        lk: function() {
            return this.k.tc
        },
        Ti: function() {
            return this.k.Zc
        },
        setMaxZoom: function(a) {
            this.k.Zc = a
        },
        Lm: function() {
            return this.k.lL
        },
        Vi: function() {
            return this.k.bd
        },
        OM: function() {
            return this.k.It
        },
        SI: function() {
            return this.k.Bb
        },
        Ib: function(a) {
            return Math.pow(2, 18 - a)
        },
        aA: function(a) {
            return this.Ib(a) * this.k.Bb
        }
    });
    var ic = ["http://shangetu0.map.bdimg.com/it/", "http://shangetu1.map.bdimg.com/it/", "http://shangetu2.map.bdimg.com/it/", "http://shangetu3.map.bdimg.com/it/", "http://shangetu4.map.bdimg.com/it/"],
    jc = ["http://online0.map.bdimg.com/tile/", "http://online1.map.bdimg.com/tile/", "http://online2.map.bdimg.com/tile/", "http://online3.map.bdimg.com/tile/", "http://online4.map.bdimg.com/tile/"],
    kc = {
        dark: "dl",
        light: "ll",
        normal: "pl"
    },
    lc = new Wb;
    lc.getTilesUrl = function(a, b, c) {
        var d = a.x,
        a = a.y,
        e = "pl";
        this.map.uh();
        e = kc[c];
        return (jc[Math.abs(d + a) % jc.length] + "?qt=tile&x=" + (d + "").replace(/-/gi, "M") + "&y=" + (a + "").replace(/-/gi, "M") + "&z=" + b + "&styles=" + e + (6 == t.N.V ? "&color_dep=32&colors=50": "") + "&udt=20131219").replace(/-(\d+)/gi, "M$1")
    };
    var sa = new hc("\u5730\u56fe", lc, {
        tips: "\u663e\u793a\u666e\u901a\u5730\u56fe"
    }),
    mc = new Wb;
    mc.RB = ["http://d0.map.baidu.com/resource/mappic/", "http://d1.map.baidu.com/resource/mappic/", "http://d2.map.baidu.com/resource/mappic/", "http://d3.map.baidu.com/resource/mappic/"];
    mc.getTilesUrl = function(a, b) {
        var c = a.x,
        d = a.y,
        e = 256 * Math.pow(2, 20 - b),
        d = Math.round((9998336 - e * d) / e) - 1;
        return url = this.RB[Math.abs(c + d) % this.RB.length] + this.map.wb + "/" + this.map.cp + "/3/lv" + (21 - b) + "/" + c + "," + d + ".jpg"
    };
    var ua = new hc("\u4e09\u7ef4", mc, {
        tips: "\u663e\u793a\u4e09\u7ef4\u5730\u56fe",
        minZoom: 15,
        maxZoom: 20,
        textColor: "white",
        projection: new Ma
    });
    ua.Ib = function(a) {
        return Math.pow(2, 20 - a)
    };
    ua.lh = function(a) {
        if (!a) return "";
        var b = C.Ts,
        c;
        for (c in b) if ( - 1 < a.search(c)) return b[c].fq;
        return ""
    };
    ua.Iz = function(a) {
        return {
            bj: 2,
            gz: 1,
            sz: 14,
            sh: 4
        } [a]
    };
    var nc = new Wb({
        ap: i
    });
    nc.getTilesUrl = function(a, b) {
        var c = a.x,
        d = a.y;
        return (ic[Math.abs(c + d) % ic.length] + "u=x=" + c + ";y=" + d + ";z=" + b + ";v=009;type=sate&fm=46").replace(/-(\d+)/gi, "M$1")
    };
    var wa = new hc("\u536b\u661f", nc, {
        tips: "\u663e\u793a\u536b\u661f\u5f71\u50cf",
        minZoom: 1,
        maxZoom: 19,
        textColor: "white"
    }),
    pc = new Wb({
        transparentPng: i
    });
    pc.getTilesUrl = function(a, b) {
        var c = a.x,
        d = a.y;
        return (jc[Math.abs(c + d) % jc.length] + "?qt=tile&x=" + (c + "").replace(/-/gi, "M") + "&y=" + (d + "").replace(/-/gi, "M") + "&z=" + b + "&styles=sl" + (6 == t.N.V ? "&color_dep=32&colors=50": "") + "&udt=20131219").replace(/-(\d+)/gi, "M$1")
    };
    var xa = new hc("\u6df7\u5408", [nc, pc], {
        tips: "\u663e\u793a\u5e26\u6709\u8857\u9053\u7684\u536b\u661f\u5f71\u50cf",
        labelText: "\u8def\u7f51",
        minZoom: 1,
        maxZoom: 19,
        textColor: "white"
    });
    var qc = 1,
    T = {};
    window.LL = T;
    function U(a, b) {
        t.lang.ra.call(this);
        this.mc = {};
        this.qj(a);
        b = b || {};
        b.aa = b.renderOptions || {};
        this.k = {
            aa: {
                xa: b.aa.panel || n,
                map: b.aa.map || n,
                Oe: b.aa.autoViewport || i,
                gn: b.aa.selectFirstResult,
                Pm: b.aa.highlightMode,
                Hb: b.aa.enableDragging || o
            },
            aq: b.onSearchComplete || p(),
            gB: b.onMarkersSet || p(),
            fB: b.onInfoHtmlSet || p(),
            hB: b.onResultsHtmlSet || p(),
            eB: b.onGetBusListComplete || p(),
            dB: b.onGetBusLineComplete || p(),
            cB: b.onBusListHtmlSet || p(),
            bB: b.onBusLineHtmlSet || p(),
            Su: b.onPolylinesSet || p(),
            Ek: b.reqFrom || ""
        };
        this.k.aa.Oe = "undefined" != typeof b && "undefined" != typeof b.renderOptions && "undefined" != typeof b.renderOptions.autoViewport ? b.renderOptions.autoViewport: i;
        this.k.aa.xa = t.yc(this.k.aa.xa)
    }
    t.ja(U, t.lang.ra);
    t.extend(U.prototype, {
        getResults: function() {
            return this.Gb ? this.dg: this.R
        },
        enableAutoViewport: function() {
            this.k.aa.Oe = i
        },
        disableAutoViewport: function() {
            this.k.aa.Oe = o
        },
        qj: function(a) {
            a && (this.mc.src = a)
        },
        uv: function(a) {
            this.k.aq = a || p()
        },
        setMarkersSetCallback: function(a) {
            this.k.gB = a || p()
        },
        setPolylinesSetCallback: function(a) {
            this.k.Su = a || p()
        },
        setInfoHtmlSetCallback: function(a) {
            this.k.fB = a || p()
        },
        setResultsHtmlSetCallback: function(a) {
            this.k.hB = a || p()
        },
        Wi: s("Ec")
    });
    var rc = {
        BC: "http://api.map.baidu.com/",
        Pa: function(a, b, c, d, e) {
            var f = (1E5 * Math.random()).toFixed(0);
            B._rd["_cbk" + f] = function(b) {
                c = c || {};
                a && a(b, c);
                delete B._rd["_cbk" + f]
            };
            d = d || "";
            b = c && c.$B ? jb(b, encodeURI) : jb(b, encodeURIComponent);
            d = this.BC + d + "?" + b + "&ie=utf-8&oue=1&fromproduct=jsapi";
            e || (d += "&res=api");
            Oa(d + ("&callback=BMap._rd._cbk" + f))
        }
    };
    window.PL = rc;
    B._rd = {};
    var N = {};
    window.OL = N;
    N.sB = function(a) {
        return a.replace(/<\/?b>/g, "")
    };
    N.YJ = function(a) {
        return a.replace(/([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0|[1-9]\d*),([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0|[1-9]\d*)(,)/g, "$1,$2;")
    };
    N.ZJ = function(a, b) {
        return a.replace(RegExp("(((-?\\d+)(\\.\\d+)?),((-?\\d+)(\\.\\d+)?);)(((-?\\d+)(\\.\\d+)?),((-?\\d+)(\\.\\d+)?);){" + b + "}", "ig"), "$1")
    };
    var sc = 2,
    tc = 3,
    uc = 0,
    vc = "bt",
    wc = "nav",
    xc = "walk",
    yc = "bl",
    zc = "bsl",
    Ac = 14,
    Bc = 15,
    Cc = 18,
    Dc = 20,
    Ec = 31;
    B.I = window.Instance = t.lang.Gc;
    function Ia(a, b) {
        U.call(this, a, b);
        b = b || {};
        b.renderOptions = b.renderOptions || {};
        this.Jk(b.pageCapacity);
        "undefined" != typeof b.renderOptions.selectFirstResult && !b.renderOptions.selectFirstResult ? this.jt() : this.Ct();
        this.ga = [];
        this.Sd = [];
        this.Ja = -1;
        this.qa = [];
        var c = this;
        H.load("local",
        function() {
            c.fr()
        },
        i)
    }
    t.ja(Ia, U, "LocalSearch");
    Ia.Wk = 10;
    Ia.ML = 1;
    Ia.xj = 100;
    Ia.Uv = 2E3;
    Ia.$v = 1E5;
    t.extend(Ia.prototype, {
        search: function(a, b) {
            this.qa.push({
                method: "search",
                arguments: [a, b]
            })
        },
        nj: function(a, b, c) {
            this.qa.push({
                method: "searchInBounds",
                arguments: [a, b, c]
            })
        },
        Hk: function(a, b, c, d) {
            this.qa.push({
                method: "searchNearby",
                arguments: [a, b, c, d]
            })
        },
        ud: function() {
            delete this.pa;
            delete this.Ec;
            delete this.R;
            delete this.W;
            this.Ja = -1;
            this.Ta();
            this.k.aa.xa && (this.k.aa.xa.innerHTML = "")
        },
        Yi: p(),
        Ct: function() {
            this.k.aa.gn = i
        },
        jt: function() {
            this.k.aa.gn = o
        },
        Jk: function(a) {
            this.k.Bh = "number" == typeof a && !isNaN(a) ? 1 > a ? Ia.Wk: a > Ia.xj ? Ia.Wk: a: Ia.Wk
        },
        Kd: function() {
            return this.k.Bh
        },
        toString: ca("LocalSearch")
    });
    var Fc = Ia.prototype;
    V(Fc, {
        clearResults: Fc.ud,
        setPageCapacity: Fc.Jk,
        getPageCapacity: Fc.Kd,
        gotoPage: Fc.Yi,
        searchNearby: Fc.Hk,
        searchInBounds: Fc.nj,
        search: Fc.search,
        enableFirstResultSelection: Fc.Ct,
        disableFirstResultSelection: Fc.jt
    });
    function Gc(a, b) {
        U.call(this, a, b)
    }
    t.ja(Gc, U, "BaseRoute");
    t.extend(Gc.prototype, {
        ud: p()
    });
    function Hc(a, b) {
        U.call(this, a, b);
        b = b || {};
        this.ln(b.policy);
        this.Jk(b.pageCapacity);
        this.$f = vc;
        this.Nn = Ac;
        this.Rq = qc;
        this.ga = [];
        this.Ja = -1;
        this.qa = [];
        var c = this;
        H.load("route",
        function() {
            c.Ac()
        })
    }
    Hc.xj = 100;
    Hc.tC = [0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 1, 1];
    t.ja(Hc, Gc, "TransitRoute");
    t.extend(Hc.prototype, {
        ln: function(a) {
            this.k.ad = 0 <= a && 4 >= a ? a: 0
        },
        OE: function(a, b) {
            this.qa.push({
                method: "_internalSearch",
                arguments: [a, b]
            })
        },
        search: function(a, b) {
            this.qa.push({
                method: "search",
                arguments: [a, b]
            })
        },
        Jk: function(a) {
            if ("string" == typeof a && (a = parseInt(a), isNaN(a))) {
                this.k.Bh = Hc.xj;
                return
            }
            this.k.Bh = "number" != typeof a ? Hc.xj: 1 <= a && a <= Hc.xj ? Math.round(a) : Hc.xj
        },
        toString: ca("TransitRoute"),
        XF: function(a) {
            return a.replace(/\(.*\)/, "")
        }
    });
    function Ic(a, b) {
        U.call(this, a, b);
        this.ga = [];
        this.Ja = -1;
        this.qa = [];
        var c = this,
        d = this.k.aa;
        1 != d.Pm && 2 != d.Pm && (d.Pm = 1);
        this.tr = this.k.aa.Hb ? i: o;
        H.load("route",
        function() {
            c.Ac()
        });
        this.wu && this.wu()
    }
    Ic.EC = " \u73af\u5c9b \u65e0\u5c5e\u6027\u9053\u8def \u4e3b\u8def \u9ad8\u901f\u8fde\u63a5\u8def \u4ea4\u53c9\u70b9\u5185\u8def\u6bb5 \u8fde\u63a5\u9053\u8def \u505c\u8f66\u573a\u5185\u90e8\u9053\u8def \u670d\u52a1\u533a\u5185\u90e8\u9053\u8def \u6865 \u6b65\u884c\u8857 \u8f85\u8def \u531d\u9053 \u5168\u5c01\u95ed\u9053\u8def \u672a\u5b9a\u4e49\u4ea4\u901a\u533a\u57df POI\u8fde\u63a5\u8def \u96a7\u9053 \u6b65\u884c\u9053 \u516c\u4ea4\u4e13\u7528\u9053 \u63d0\u524d\u53f3\u8f6c\u9053".split(" ");
    t.ja(Ic, Gc, "DWRoute");
    t.extend(Ic.prototype, {
        search: function(a, b, c) {
            this.qa.push({
                method: "search",
                arguments: [a, b, c]
            })
        }
    });
    function Jc(a, b) {
        Ic.call(this, a, b);
        b = b || {};
        this.ln(b.policy);
        this.$f = wc;
        this.Nn = Dc;
        this.Rq = tc
    }
    t.ja(Jc, Ic, "DrivingRoute");
    t.extend(Jc.prototype, {
        ln: function(a) {
            this.k.ad = 0 <= a && 2 >= a ? a: 0
        }
    });
    function Kc(a, b) {
        Ic.call(this, a, b);
        this.$f = xc;
        this.Nn = Ec;
        this.Rq = sc;
        this.tr = o
    }
    t.ja(Kc, Ic, "WalkingRoute");
    function Lc(a) {
        this.k = {};
        t.extend(this.k, a);
        this.qa = [];
        var b = this;
        H.load("othersearch",
        function() {
            b.Ac()
        })
    }
    t.ja(Lc, t.lang.ra, "Geocoder");
    t.extend(Lc.prototype, {
        hu: function(a, b, c) {
            this.qa.push({
                method: "getPoint",
                arguments: [a, b, c]
            })
        },
        Dp: function(a, b, c) {
            this.qa.push({
                method: "getLocation",
                arguments: [a, b, c]
            })
        },
        toString: ca("Geocoder")
    });
    var Mc = Lc.prototype;
    V(Mc, {
        getPoint: Mc.hu,
        getLocation: Mc.Dp
    });
    function Geolocation(a) {
        this.k = {};
        t.extend(this.k, a);
        this.qa = [];
        var b = this;
        H.load("othersearch",
        function() {
            b.Ac()
        })
    }
    t.extend(Geolocation.prototype, {
        getCurrentPosition: function(a, b) {
            this.qa.push({
                method: "getCurrentPosition",
                arguments: [a, b]
            })
        },
        Wi: s("Ec")
    });
    var Nc = Geolocation.prototype;
    V(Nc, {
        getCurrentPosition: Nc.getCurrentPosition,
        getStatus: Nc.Wi
    });
    function Oc(a) {
        a = a || {};
        a.aa = a.renderOptions || {};
        this.k = {
            aa: {
                map: a.aa.map || n
            }
        };
        this.qa = [];
        var b = this;
        H.load("othersearch",
        function() {
            b.Ac()
        })
    }
    t.ja(Oc, t.lang.ra, "LocalCity");
    t.extend(Oc.prototype, {
        get: function(a) {
            this.qa.push({
                method: "get",
                arguments: [a]
            })
        },
        toString: ca("LocalCity")
    });
    function Pc() {
        this.qa = [];
        var a = this;
        H.load("othersearch",
        function() {
            a.Ac()
        })
    }
    t.ja(Pc, t.lang.ra, "Boundary");
    t.extend(Pc.prototype, {
        get: function(a, b) {
            this.qa.push({
                method: "get",
                arguments: [a, b]
            })
        },
        toString: ca("Boundary")
    });
    function Qc(a, b) {
        U.call(this, a, b);
        this.AC = yc;
        this.DC = Bc;
        this.zC = zc;
        this.CC = Cc;
        this.qa = [];
        var c = this;
        H.load("buslinesearch",
        function() {
            c.Ac()
        })
    }
    Qc.ko = C.ba + "iw_plus.gif";
    Qc.IE = C.ba + "iw_minus.gif";
    Qc.eG = C.ba + "stop_icon.png";
    t.ja(Qc, U);
    t.extend(Qc.prototype, {
        getBusList: function(a) {
            this.qa.push({
                method: "getBusList",
                arguments: [a]
            })
        },
        getBusLine: function(a) {
            this.qa.push({
                method: "getBusLine",
                arguments: [a]
            })
        },
        setGetBusListCompleteCallback: function(a) {
            this.k.eB = a || p()
        },
        setGetBusLineCompleteCallback: function(a) {
            this.k.dB = a || p()
        },
        setBusListHtmlSetCallback: function(a) {
            this.k.cB = a || p()
        },
        setBusLineHtmlSetCallback: function(a) {
            this.k.bB = a || p()
        },
        setPolylinesSetCallback: function(a) {
            this.k.Su = a || p()
        }
    });
    function Rc(a) {
        U.call(this, a);
        a = a || {};
        this.Dc = {
            input: a.input || n,
            Ls: a.baseDom || n,
            types: a.types || [],
            aq: a.onSearchComplete || p()
        };
        this.mc.src = a.location || "\u5168\u56fd";
        this.qg = "";
        this.pe = n;
        this.px = "";
        this.Ie();
        va(5011);
        var b = this;
        H.load("autocomplete",
        function() {
            b.Ac()
        })
    }
    t.ja(Rc, U, "Autocomplete");
    t.extend(Rc.prototype, {
        Ie: p(),
        show: p(),
        J: p(),
        vv: function(a) {
            this.Dc.types = a
        },
        qj: function(a) {
            this.mc.src = a
        },
        search: ba("qg"),
        qq: ba("px")
    });
    var ya;
    function ta(a, b) {
        this.C = "string" == typeof a ? t.Q(a) : a;
        this.k = {
            linksControl: i,
            enableScrollWheelZoom: i,
            navigationControl: i,
            panoramaRenderer: "flash",
            swfSrc: "http://api.map.baidu.com/res/swf/APILoader.swf",
            visible: i
        };
        var b = b || {},
        c;
        for (c in b) this.k[c] = b[c];
        this.Sa = {
            heading: 0,
            pitch: 0
        };
        this.po = [];
        this.sb = this.Qa = n;
        this.Yl = this.Cl();
        this.ga = [];
        this.ac = 1;
        this.Sl = this.ZE = this.Ng = "";
        this.Ke = [];
        this.Ul = [];
        var d = this;
        Aa() && !F() && "javascript" != b.panoramaRenderer ? H.load("panoramaflash",
        function() {
            d.Ie()
        },
        i) : H.load("panorama",
        function() {
            d.Zb()
        },
        i);
        va(5044, {
            type: b.panoramaRenderer
        });
        "api" == b.ik ? va(5036) : va(5039)
    }
    var Tc = 4,
    Uc = 1;
    t.lang.ja(ta, t.lang.ra, "Panorama");
    t.extend(ta.prototype, {
        tI: s("po"),
        Jd: s("Qa"),
        TI: s("Lo"),
        FB: s("Lo"),
        da: s("sb"),
        Ya: s("Sa"),
        T: s("ac"),
        Si: s("Ng"),
        WM: function() {
            return this.fM || []
        },
        TM: s("ZE"),
        Qd: function(a, b) {
            a != this.Qa && (this.ai = this.Qa, this.mo = this.sb, this.Qa = a, this.Sl = b || "street", this.sb = n)
        },
        ea: function(a) {
            a.bb(this.sb) || (this.ai = this.Qa, this.mo = this.sb, this.sb = a, this.Qa = n)
        },
        Ae: function(a) {
            this.Sa = a;
            a = this.Sa.pitch;
            "cvsRender" == this.Cl() ? (90 < a && (a = 90), -90 > a && (a = -90)) : "cssRender" == this.Cl() && (45 < a && (a = 45), -45 > a && (a = -45));
            this.Sa.pitch = a
        },
        Pc: function(a) {
            a != this.ac && (a > Tc && (a = Tc), a < Uc && (a = Uc), a != this.ac && (this.ac = a))
        },
        ts: function() {
            if (this.A) for (var a = this.A.gu(), b = 0; b < a.length; b++)(a[b] instanceof S || a[b] instanceof Nb) && a[b].P && this.ga.push(a[b])
        },
        sv: ba("A"),
        th: function() {
            this.Vg.style.display = "none"
        },
        vq: function() {
            this.Vg.style.display = "block"
        },
        XH: function() {
            this.k.enableScrollWheelZoom = i
        },
        CH: function() {
            this.k.enableScrollWheelZoom = o
        },
        show: function() {
            this.k.visible = i
        },
        J: function() {
            this.k.visible = o
        },
        Cl: function() {
            return ! F() && rb() ? "cvsRender": "cssRender"
        },
        WI: function() {
            return this.k.visible
        },
        Is: function(a) {
            function b(a, b) {
                return function() {
                    a.Ul.push({
                        UA: b,
                        TA: arguments
                    })
                }
            }
            for (var c = a.getPanoMethodList(), d = "", e = 0, f = c.length; e < f; e++) d = c[e],
            this[d] = b(this, d);
            this.Ke.push(a)
        },
        gv: function(a) {
            for (var b = this.Ke.length; b--;) this.Ke[b] === a && this.Ke.splice(b, 1)
        }
    });
    var W = ta.prototype;
    V(W, {
        setId: W.Qd,
        setPosition: W.ea,
        setPov: W.Ae,
        setZoom: W.Pc,
        getId: W.Jd,
        getPosition: W.da,
        getPov: W.Ya,
        getZoom: W.T,
        getLinks: W.tI,
        enableDoubleClickZoom: W.FM,
        disableDoubleClickZoom: W.zM,
        enableScrollWheelZoom: W.XH,
        disableScrollWheelZoom: W.CH,
        show: W.show,
        hide: W.J,
        addPlugin: W.Is,
        removePlugin: W.gv,
        getVisible: W.WI
    });
    function Cb(a, b) {
        this.S = a || n;
        var c = this;
        c.S && c.O();
        H.load("panoramaservice",
        function() {
            c.eD()
        });
        "api" == (b || {}).ik ? va(5037) : va(5040)
    }
    B.Vu(function(a) {
        new Cb(a, {
            ik: "api"
        })
    });
    t.extend(Cb.prototype, {
        O: function() {
            function a(a) {
                if (a) {
                    if (a.id != b.Lo) {
                        b.FB(a.id);
                        var c = new L("ondataload");
                        c.data = a;
                        b.Qa = a.id;
                        b.sb = a.position;
                        b.cM = a.bv;
                        b.dM = a.cv;
                        b.Ng = a.description;
                        b.po = a.links;
                        b.dispatchEvent(c);
                        b.dispatchEvent(new L("onposition_changed"));
                        b.dispatchEvent(new L("onlinks_changed"))
                    }
                } else b.Qa = b.ai,
                b.sb = b.mo,
                b.dispatchEvent(new L("onnoresult"))
            }
            var b = this.S,
            c = this;
            b.addEventListener("id_changed",
            function() {
                c.Km(b.Jd(), a)
            });
            b.addEventListener("position_changed_inner",
            function() {
                c.mh(b.da(), a)
            })
        },
        Km: function(a, b) {
            this.Qa = a;
            this.of = b;
            this.Wr = n
        },
        mh: function(a, b) {
            this.Wr = a;
            this.of = b;
            this.Qa = n
        }
    });
    var Vc = Cb.prototype;
    V(Vc, {
        getPanoramaById: Vc.Km,
        getPanoramaByLocation: Vc.mh
    });
    function Bb(a) {
        Wb.call(this);
        "api" == (a || {}).ik ? va(5038) : va(5041)
    }
    Bb.hw = ["http://pcsv0.map.bdimg.com/tile/", "http://pcsv1.map.bdimg.com/tile/"];
    Bb.prototype = new Wb;
    Bb.prototype.getTilesUrl = function(a, b) {
        return Bb.hw[(a.x + a.y) % Bb.hw.length] + "?udt=v&qt=tile&styles=pl&x=" + a.x + "&y=" + a.y + "&z=" + b
    };
    Bb.prototype.Vm = ca(i);
    Wc.Nj = new P;
    function Wc() {}
    t.extend(Wc, {
        EH: function(a, b, c) {
            c = t.lang.Gc(c);
            b = {
                data: b
            };
            "position_changed" == a && (b.data = Wc.Nj.Ch(new O(b.data.mercatorX, b.data.mercatorY)));
            c.dispatchEvent(new L("on" + a), b)
        }
    });
    var Xc = Wc;
    V(Xc, {
        dispatchFlashEvent: Xc.EH
    });
    B.Map = ra;
    B.Hotspot = Na;
    B.MapType = hc;
    B.Point = G;
    B.Pixel = O;
    B.Size = K;
    B.Bounds = La;
    B.TileLayer = Wb;
    B.Projection = Fb;
    B.MercatorProjection = P;
    B.PerspectiveProjection = Ma;
    B.Copyright = function(a, b, c) {
        this.id = a;
        this.ub = b;
        this.content = c
    };
    B.Overlay = Hb;
    B.Label = Nb;
    B.Marker = S;
    B.Icon = Lb;
    B.Polyline = Sb;
    B.Polygon = Qb;
    B.InfoWindow = Mb;
    B.Circle = Tb;
    B.Control = R;
    B.NavigationControl = Pa;
    B.GeolocationControl = wb;
    B.OverviewMapControl = Ra;
    B.CopyrightControl = yb;
    B.ScaleControl = Qa;
    B.MapTypeControl = Sa;
    B.PanoramaControl = Ab;
    B.TrafficLayer = fc;
    B.CustomLayer = Ta;
    B.ContextMenu = Db;
    B.MenuItem = Eb;
    B.LocalSearch = Ia;
    B.TransitRoute = Hc;
    B.DrivingRoute = Jc;
    B.WalkingRoute = Kc;
    B.Autocomplete = Rc;
    B.Geocoder = Lc;
    B.LocalCity = Oc;
    B.Geolocation = Geolocation;
    B.BusLineSearch = Qc;
    B.Boundary = Pc;
    B.VectorCloudLayer = dc;
    B.VectorTrafficLayer = ec;
    B.Panorama = ta;
    B.PanoramaService = Cb;
    B.PanoramaCoverageLayer = Bb;
    B.PanoramaFlashInterface = Wc;
    function V(a, b) {
        for (var c in b) a[c] = b[c]
    }
    V(window, {
        BMap: B,
        _jsload: function(a, b) {
            ha.zq.tJ && ha.zq.set(a, b);
            H.UG(a, b)
        },
        BMAP_API_VERSION: "1.5"
    });
    var X = ra.prototype;
    V(X, {
        getBounds: X.xg,
        getCenter: X.Da,
        getMapType: X.ha,
        getSize: X.xb,
        setSize: X.Oc,
        getViewport: X.Ip,
        getZoom: X.T,
        centerAndZoom: X.be,
        panTo: X.ye,
        panBy: X.xe,
        setCenter: X.ze,
        setCurrentCity: X.rv,
        setMapType: X.Eg,
        setViewport: X.Lk,
        setZoom: X.Pc,
        highResolutionEnabled: X.uh,
        zoomTo: X.lf,
        zoomIn: X.Mv,
        zoomOut: X.Nv,
        addHotspot: X.Wo,
        removeHotspot: X.hK,
        clearHotspots: X.Ai,
        checkResize: X.WG,
        addControl: X.To,
        removeControl: X.rB,
        getContainer: X.Ca,
        addContextMenu: X.$j,
        removeContextMenu: X.Dk,
        addOverlay: X.Xa,
        removeOverlay: X.cd,
        clearOverlays: X.Ty,
        openInfoWindow: X.Tb,
        closeInfoWindow: X.oc,
        pointToOverlayPixel: X.df,
        overlayPixelToPoint: X.jB,
        getInfoWindow: X.We,
        getOverlays: X.gu,
        getPanes: function() {
            return {
                floatPane: this.Rc.Nt,
                markerMouseTarget: this.Rc.Ku,
                floatShadow: this.Rc.Dz,
                labelPane: this.Rc.CA,
                markerPane: this.Rc.OA,
                markerShadow: this.Rc.PA,
                mapPane: this.Rc.Up
            }
        },
        addTileLayer: X.Ne,
        removeTileLayer: X.hf,
        pixelToPoint: X.Va,
        pointToPixel: X.ob,
        setFeatureStyle: X.yB,
        selectBaseElement: X.JN,
        setMapStyle: X.BB,
        enable3DBuilding: X.hk,
        disable3DBuilding: X.zH
    });
    var Yc = hc.prototype;
    V(Yc, {
        getTileLayer: Yc.RI,
        getMinZoom: Yc.lk,
        getMaxZoom: Yc.Ti,
        getProjection: Yc.Vi,
        getTextColor: Yc.Lm,
        getTips: Yc.Mm
    });
    V(window, {
        BMAP_NORMAL_MAP: sa,
        BMAP_PERSPECTIVE_MAP: ua,
        BMAP_SATELLITE_MAP: wa,
        BMAP_HYBRID_MAP: xa
    });
    var Zc = P.prototype;
    V(Zc, {
        lngLatToPoint: Zc.Ym,
        pointToLngLat: Zc.Ch
    });
    var $c = Ma.prototype;
    V($c, {
        lngLatToPoint: $c.Ym,
        pointToLngLat: $c.Ch
    });
    var ad = La.prototype;
    V(ad, {
        equals: ad.bb,
        containsPoint: ad.gH,
        containsBounds: ad.fH,
        intersects: ad.mA,
        extend: ad.extend,
        getCenter: ad.Da,
        isEmpty: ad.Bg,
        getSouthWest: ad.te,
        getNorthEast: ad.se,
        toSpan: ad.Iv
    });
    var bd = Hb.prototype;
    V(bd, {
        isVisible: bd.Cg,
        show: bd.show,
        hide: bd.J
    });
    Hb.getZIndex = Hb.Nm;
    var cd = Q.prototype;
    V(cd, {
        openInfoWindow: cd.Tb,
        closeInfoWindow: cd.oc,
        enableMassClear: cd.jh,
        disableMassClear: cd.BH,
        show: cd.show,
        hide: cd.J,
        getMap: cd.du,
        addContextMenu: cd.$j,
        removeContextMenu: cd.Dk
    });
    var dd = S.prototype;
    V(dd, {
        setIcon: dd.Uf,
        getIcon: dd.Pz,
        setPosition: dd.ea,
        getPosition: dd.da,
        setOffset: dd.dd,
        getOffset: dd.Xe,
        getLabel: dd.Qz,
        setLabel: dd.pj,
        setTitle: dd.fc,
        setTop: dd.Kk,
        enableDragging: dd.Hb,
        disableDragging: dd.it,
        setZIndex: dd.uq,
        getMap: dd.du,
        setAnimation: dd.oj,
        setShadow: dd.tq,
        hide: dd.J
    });
    V(window, {
        BMAP_ANIMATION_DROP: 1,
        BMAP_ANIMATION_BOUNCE: 2
    });
    var ed = Nb.prototype;
    V(ed, {
        setStyle: ed.wc,
        setStyles: ed.Ih,
        setContent: ed.Nc,
        setPosition: ed.ea,
        getPosition: ed.da,
        setOffset: ed.dd,
        getOffset: ed.Xe,
        setTitle: ed.fc,
        setZIndex: ed.uq,
        getMap: ed.du,
        getContent: ed.zp
    });
    var fd = Lb.prototype;
    V(fd, {
        setImageUrl: fd.IK,
        setSize: fd.Oc,
        setAnchor: fd.Nb,
        setImageOffset: fd.jn,
        setImageSize: fd.HK,
        setInfoWindowAnchor: fd.KK,
        setPrintImageUrl: fd.TK
    });
    var gd = Mb.prototype;
    V(gd, {
        redraw: gd.Mc,
        setTitle: gd.fc,
        setContent: gd.Nc,
        getContent: gd.zp,
        getPosition: gd.da,
        enableMaximize: gd.Se,
        disableMaximize: gd.op,
        isOpen: gd.Aa,
        setMaxContent: gd.kn,
        maximize: gd.Vp,
        enableAutoPan: gd.xm
    });
    var hd = Jb.prototype;
    V(hd, {
        getPath: hd.Xc,
        setPath: hd.ed,
        setPositionAt: hd.rj,
        getStrokeColor: hd.KI,
        setStrokeWeight: hd.qn,
        getStrokeWeight: hd.Xz,
        setStrokeOpacity: hd.mn,
        getStrokeOpacity: hd.LI,
        setFillOpacity: hd.pq,
        getFillOpacity: hd.oI,
        setStrokeStyle: hd.nn,
        getStrokeStyle: hd.Wz,
        getFillColor: hd.nI,
        getBounds: hd.xg,
        enableEditing: hd.ce,
        disableEditing: hd.AH
    });
    var id = Tb.prototype;
    V(id, {
        setCenter: id.ze,
        getCenter: id.Da,
        getRadius: id.DI,
        setRadius: id.sq
    });
    var jd = Qb.prototype;
    V(jd, {
        getPath: jd.Xc,
        setPath: jd.ed,
        setPositionAt: jd.rj
    });
    var kd = Na.prototype;
    V(kd, {
        getPosition: kd.da,
        setPosition: kd.ea,
        getText: kd.mu,
        setText: kd.tn
    });
    G.prototype.equals = G.prototype.bb;
    O.prototype.equals = O.prototype.bb;
    K.prototype.equals = K.prototype.bb;
    V(window, {
        BMAP_ANCHOR_TOP_LEFT: tb,
        BMAP_ANCHOR_TOP_RIGHT: ub,
        BMAP_ANCHOR_BOTTOM_LEFT: vb,
        BMAP_ANCHOR_BOTTOM_RIGHT: 3
    });
    var ld = R.prototype;
    V(ld, {
        setAnchor: ld.Nb,
        getAnchor: ld.Ot,
        setOffset: ld.dd,
        getOffset: ld.Xe,
        show: ld.show,
        hide: ld.J,
        isVisible: ld.Cg,
        toString: ld.toString
    });
    var md = Pa.prototype;
    V(md, {
        getType: md.rk,
        setType: md.sj
    });
    V(window, {
        BMAP_NAVIGATION_CONTROL_LARGE: 0,
        BMAP_NAVIGATION_CONTROL_SMALL: 1,
        BMAP_NAVIGATION_CONTROL_PAN: 2,
        BMAP_NAVIGATION_CONTROL_ZOOM: 3
    });
    var nd = Ra.prototype;
    V(nd, {
        changeView: nd.Tc,
        setSize: nd.Oc,
        getSize: nd.xb
    });
    var od = Qa.prototype;
    V(od, {
        getUnit: od.VI,
        setUnit: od.wv
    });
    V(window, {
        BMAP_UNIT_METRIC: "metric",
        BMAP_UNIT_IMPERIAL: "us"
    });
    var pd = yb.prototype;
    V(pd, {
        addCopyright: pd.Uo,
        removeCopyright: pd.fv,
        getCopyright: pd.Qi,
        getCopyrightCollection: pd.Ut
    });
    V(window, {
        BMAP_MAPTYPE_CONTROL_HORIZONTAL: zb,
        BMAP_MAPTYPE_CONTROL_DROPDOWN: 1
    });
    var qd = Wb.prototype;
    V(qd, {
        getMapType: qd.ha,
        getCopyright: qd.Qi,
        isTransparentPng: qd.Vm
    });
    var rd = Db.prototype;
    V(rd, {
        addItem: rd.Xo,
        addSeparator: rd.Js,
        removeSeparator: rd.hv
    });
    var sd = Eb.prototype;
    V(sd, {
        setText: sd.tn
    });
    var td = U.prototype;
    V(td, {
        getStatus: td.Wi,
        setSearchCompleteCallback: td.uv,
        getPageCapacity: td.Kd,
        setPageCapacity: td.Jk,
        setLocation: td.qj,
        disableFirstResultSelection: td.jt,
        enableFirstResultSelection: td.Ct,
        gotoPage: td.Yi,
        searchNearby: td.Hk,
        searchInBounds: td.nj,
        search: td.search
    });
    V(window, {
        BMAP_STATUS_SUCCESS: 0,
        BMAP_STATUS_CITY_LIST: 1,
        BMAP_STATUS_UNKNOWN_LOCATION: 2,
        BMAP_STATUS_UNKNOWN_ROUTE: 3,
        BMAP_STATUS_INVALID_KEY: 4,
        BMAP_STATUS_INVALID_REQUEST: 5,
        BMAP_STATUS_PERMISSION_DENIED: 6,
        BMAP_STATUS_SERVICE_UNAVAILABLE: 7,
        BMAP_STATUS_TIMEOUT: 8
    });
    V(window, {
        BMAP_POI_TYPE_NORMAL: 0,
        BMAP_POI_TYPE_BUSSTOP: 1,
        BMAP_POI_TYPE_BUSLINE: 2,
        BMAP_POI_TYPE_SUBSTOP: 3,
        BMAP_POI_TYPE_SUBLINE: 4
    });
    V(window, {
        BMAP_TRANSIT_POLICY_LEAST_TIME: 0,
        BMAP_TRANSIT_POLICY_LEAST_TRANSFER: 2,
        BMAP_TRANSIT_POLICY_LEAST_WALKING: 3,
        BMAP_TRANSIT_POLICY_AVOID_SUBWAYS: 4,
        BMAP_LINE_TYPE_BUS: 0,
        BMAP_LINE_TYPE_SUBWAY: 1,
        BMAP_LINE_TYPE_FERRY: 2
    });
    var ud = Gc.prototype;
    V(ud, {
        clearResults: ud.ud
    });
    var vd = Hc.prototype;
    V(vd, {
        setPolicy: vd.ln,
        toString: vd.toString,
        setPageCapacity: vd.Jk
    });
    V(window, {
        BMAP_DRIVING_POLICY_LEAST_TIME: 0,
        BMAP_DRIVING_POLICY_LEAST_DISTANCE: 1,
        BMAP_DRIVING_POLICY_AVOID_HIGHWAYS: 2
    });
    V(window, {
        BMAP_HIGHLIGHT_STEP: 1,
        BMAP_HIGHLIGHT_ROUTE: 2
    });
    V(window, {
        BMAP_ROUTE_TYPE_DRIVING: tc,
        BMAP_ROUTE_TYPE_WALKING: sc
    });
    V(window, {
        BMAP_ROUTE_STATUS_NORMAL: uc,
        BMAP_ROUTE_STATUS_EMPTY: 1,
        BMAP_ROUTE_STATUS_ADDRESS: 2
    });
    var wd = Jc.prototype;
    V(wd, {
        setPolicy: wd.ln
    });
    var xd = Rc.prototype;
    V(xd, {
        show: xd.show,
        hide: xd.J,
        setTypes: xd.vv,
        setLocation: xd.qj,
        search: xd.search,
        setInputValue: xd.qq
    });
    V(Ta.prototype, {});
    var yd = Pc.prototype;
    V(yd, {
        get: yd.get
    });
    V(Bb.prototype, {});
    V(Ja.prototype, {});
    B.yG();
})()

 

你可能感兴趣的:(map)