! function() {
    define("skbJet/component/resourceLoader/resourceLib", [], function() {
        return {}
    }), define("skbJet/component/resourceLoader/Util", [], function() {
        var e = {};
        return e.httpGetJson = function(t, o, n) {
            e.httpGetText(t, function(e) {
                o(JSON.parse(e))
            }, n)
        }, e.httpGetText = function(e, t, o) {
            var n = new XMLHttpRequest;
            n.addEventListener("load", function(e) {
                e.target.status >= 200 && e.target.status < 300 ? t(e.target.responseText) : o()
            }), n.addEventListener("error", o), n.addEventListener("timeout", o), n.open("GET", e), n.send()
        }, e.removeQueryStr = function(e) {
            var t = e.match(/(.*)\?/);
            return t ? t[1] : e
        }, e.getFileNameFromPath = function(e) {
            var t = e.match(/\/?([^\/]+)$/);
            return t ? t[1] : e
        }, e.getFileExt = function(t, o) {
            t = e.removeQueryStr(t), t = e.getFileNameFromPath(t);
            var n = t.match(/\.(\w+)$/);
            return n && n[1] ? o ? n[1].toLowerCase() : n[1] : null
        }, e.getFileNameWithoutExt = function(t) {
            t = e.removeQueryStr(t), t = e.getFileNameFromPath(t);
            var o = t.match(/(.*)(\.\w+)+$/);
            return o ? o[1] : t
        }, e.getParentFolder = function(t) {
            t = e.removeQueryStr(t);
            var o = e.getFileNameFromPath(t);
            return t.substring(0, t.length - o.length)
        }, e
    }), define("skbJet/component/resourceLoader/LoaderContext", [], function() {
        function e(e, t, o) {
            this.assetPackUrl = e, this.languageCode = t, this.skinCode = o, this.totalResAmount = 0, this.currentLoaded = 0, this.gameFolder = null, this.i18nParent = null, this.queryStr = "", window._cacheFlag && window._cacheFlag.queryStr && (this.queryStr = window._cacheFlag.queryStr), this.fileListMap = {
                i18n: null
            }, this.subLoaderMap = {}, this.onFileLoaded = function() {}, this.onLoadFailed = function() {}
        }
        return e
    }), define("skbJet/component/resourceLoader/LoaderChainHandler", [], function() {
        function e() {}
        return e.prototype.next = null, e.prototype.handle = null, e
    }), define("skbJet/component/resourceLoader/handlers/languageListHandler", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/LoaderChainHandler"], function(e, t) {
        function o(e, t) {
            for (var o = {}, n = 0; n < e.length; n++) o[e[n]] = [e[n].toLowerCase()], e[n].indexOf("_") > -1 ? o[e[n]].push(e[n].replace("_", "-").toLowerCase()) : e[n].indexOf("-") > -1 && o[e[n]].push(e[n].replace("-", "_").toLowerCase());
            var r;
            for (var i in o)
                if (o[i].indexOf("i18n/" + t.languageCode.toLowerCase() + ".json") >= 0) {
                    r = i.substring(i.lastIndexOf("/") + 1, i.lastIndexOf("."));
                    break
                }
            if (!r)
                for (var i in o)
                    if (o[i].indexOf("i18n/default.json") >= 0) {
                        r = i.substring(i.lastIndexOf("/") + 1, i.lastIndexOf("."));
                        break
                    }
            if (!r)
                for (var i in o)
                    if (o[i].indexOf("i18n/en.json") >= 0) {
                        r = i.substring(i.lastIndexOf("/") + 1, i.lastIndexOf("."));
                        break
                    }
            return !!r && (t.languageCode = r, !0)
        }

        function n(t) {
            var o = t.gameFolder,
                n = !1;
            if (window.location.search.match(/&?custom=true&?/) && (n = !0), window.gtk && window.gtk.jLottery && window.gtk.jLottery.embeddedParams && window.gtk.jLottery.embeddedParams.custom && (n = !0), n) {
                var r, i = window.location.pathname;
                i.match(/\/splash\.html$/) || i.match(/\/launcher\.html$/) ? (r = e.getParentFolder(i), r = r.match(/\/([^\/]+\/)$/)[1]) : r = t.gameFolder.match(/\/([^\/]+\/)$/)[1], o = "/custom_lang/" + t.skinCode + "/" + r
            }
            return o
        }
        var r = new t;
        return r.handle = function(t) {
            t.languageCode = t.languageCode || "default", t.languageCode = t.languageCode.toLowerCase();
            var i = t.assetPackUrl.substring(0, t.assetPackUrl.lastIndexOf("/"));
            t.gameFolder = i.substring(0, i.lastIndexOf("/") + 1), t.i18nParent = n(t), e.httpGetJson(t.i18nParent + "i18n.json" + t.queryStr, function(e) {
                o(e.i18n, t) ? r.next.handle(t) : t.onLoadFailed()
            }, t.onLoadFailed)
        }, r
    }), define("skbJet/component/resourceLoader/handlers/skinListHandler", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/LoaderChainHandler"], function(e, t) {
        function o(e, t) {
            for (var o = 0; o < e.length; o++) {
                var n = e[o];
                if (n = n.substring(n.lastIndexOf("/") + 1, n.lastIndexOf(".")), t.skinCode.toLowerCase() === n.toLowerCase()) return
            }
            t.skinCode = "default"
        }
        var n = new t;
        return n.handle = function(t) {
            t.skinCode = t.skinCode || "default";
            var r = t.i18nParent + "i18n/" + t.languageCode + ".json" + t.queryStr;
            e.httpGetJson(r, function(e) {
                o(e[t.languageCode], t), n.next.handle(t)
            }, t.onLoadFailed)
        }, n
    }), define("skbJet/component/resourceLoader/handlers/fileListHandler", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/LoaderChainHandler"], function(e, t) {
        function o(e, t, o, n) {
            n.fileListMap[e] || (n.fileListMap[e] = {});
            for (var r = 0; r < t.length; r++) n.fileListMap[e][t[r]] = o
        }

        function n(t, n) {
            var i = t.assetPackUrl + ".json" + t.queryStr;
            e.httpGetJson(i, function(e) {
                for (var i in e) o(i, e[i], t.gameFolder + "assetPacks/", t);
                var s = t.assetPackUrl.substring(t.assetPackUrl.lastIndexOf("assetPacks"));
                n && n.indexOf(t.skinCode + "/" + s + ".json") > -1 ? r(t, s) : a.next.handle(t)
            }, t.onLoadFailed)
        }

        function r(t, n) {
            var r = t.i18nParent + "i18n/" + t.languageCode + "/" + t.skinCode + "/",
                i = r + n + ".json" + t.queryStr;
            e.httpGetJson(i, function(e) {
                for (var n in e) o(n, e[n], r + "assetPacks/", t);
                a.next.handle(t)
            }, t.onLoadFailed)
        }

        function i(t) {
            var r = t.i18nParent + "i18n/",
                i = r + t.languageCode + "/",
                a = i + t.skinCode + ".json" + t.queryStr;
            e.httpGetJson(a, function(e) {
                o("i18n", e[t.skinCode], i, t), n(t, e.assetPacks)
            }, t.onLoadFailed)
        }
        var a = new t;
        return a.handle = i, a
    }), define("skbJet/component/resourceLoader/handlers/fileLoadHandler", ["skbJet/component/resourceLoader/LoaderChainHandler"], function(e) {
        function t(e, t, o) {
            setTimeout(function() {
                e.load(t, o)
            }, 1)
        }
        var o = new e;
        return o.handle = function(e) {
            for (var o in e.fileListMap) e.subLoaderMap[o] && t(e.subLoaderMap[o], e.fileListMap[o], {
                onFileLoaded: e.onFileLoaded,
                onLoadFailed: e.onLoadFailed,
                queryStr: e.queryStr
            })
        }, o.addSubLoader = function(e, t, o) {
            e.subLoaderMap[t] = o
        }, o.summary = function(e) {
            var t = 0,
                o = 0,
                n = !0;
            for (var r in e.fileListMap) e.subLoaderMap[r] && (t += e.subLoaderMap[r].getTotal(), o += e.subLoaderMap[r].getCurrent(), n = n && e.subLoaderMap[r].isComplete());
            return {
                total: t,
                current: o,
                complete: n
            }
        }, o
    }), define("skbJet/component/resourceLoader/ResourceLoader", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/LoaderContext", "skbJet/component/resourceLoader/handlers/languageListHandler", "skbJet/component/resourceLoader/handlers/skinListHandler", "skbJet/component/resourceLoader/handlers/fileListHandler", "skbJet/component/resourceLoader/handlers/fileLoadHandler"], function(e, t, o, n, r, i) {
        function a(e, a, s) {
            this.context = new t(e, a, s), this.loadChain = [o, n, r, i]
        }
        var s;
        return a.prototype.load = function(e, t) {
            for (var o = 0; o < this.loadChain.length - 1; o++) this.loadChain[o].next = this.loadChain[o + 1];
            this.context.onFileLoaded = e, this.context.onLoadFailed = t, this.loadChain[0].handle(this.context)
        }, a.prototype.addSubLoader = function(e, t) {
            i.addSubLoader(this.context, e, t)
        }, a.prototype.currentProgress = function() {
            return i.summary(this.context)
        }, a.initDefault = function(e, t, o) {
            if (s) throw "Default loader already inited.";
            s = new a(e, t, o)
        }, a.getDefault = function() {
            return s
        }, a.prototype.addHeartBeat = function(e, t) {
            function o() {
                var t = r.currentProgress();
                if (t.complete) return void clearInterval(n);
                e(t)
            }
            var n, r = this;
            t || (t = 5e3), n = setInterval(o, t)
        }, a
    }), define("skbJet/component/resourceLoader/AbstractSubLoader", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/resourceLib"], function(e, t) {
        function o() {}

        function n() {}
        return n.prototype._initOptions = function(e, o) {
            this._count = {
                total: 0,
                current: 0,
                complete: !1
            }, this.options = o || {}, this.options.type = this.options.type || e, t[this.options.type] || (t[this.options.type] = {})
        }, n.prototype.getTotal = function() {
            return this._count.total
        }, n.prototype.getCurrent = function() {
            return this._count.current
        }, n.prototype.isComplete = function() {
            return this._count.complete
        }, n.prototype._prepareLoad = function(e) {
            e = e || {}, this._count.total = 0, this._count.current = 0, e.queryStr = e.queryStr ? e.queryStr : "", e.onFileLoaded = e.onFileLoaded ? e.onFileLoaded : o, e.onLoadFailed = e.onLoadFailed ? e.onLoadFailed : o;
            for (var t in e) this.options[t] = e[t]
        }, n.prototype.load = function(o, n) {
            this._prepareLoad(n);
            var r = [];
            for (var i in o)
                if (o[i]) {
                    if (this.options.fileExtFilterList) {
                        var a = e.getFileExt(i, !0);
                        if (this.options.fileExtFilterList.indexOf(a) < 0) continue
                    }
                    this._count.total++, r.push(i)
                }
            if (0 === this._count.total) return this._count.complete = !0, void this.options.onFileLoaded();
            for (var s = this, d = 0; d < r.length; d++) {
                var i = r[d];
                this._doLoadFile(o[i] + i + this.options.queryStr, function(e) {
                    return function(o) {
                        s._count.current++, s._count.current === s._count.total && (s._count.complete = !0), t[s.options.type] = t[s.options.type] || {}, t[s.options.type][e] = o, s.options.onFileLoaded()
                    }
                }(e.getFileNameWithoutExt(i)), this.options.onLoadFailed)
            }
        }, n.prototype._doLoadFile = function(e, t, o) {
            throw "Not implemented yet. Params: url:" + e + "   success:" + t + "   fail:" + o
        }, n
    }), define("skbJet/component/resourceLoader/subLoaders/HtmlTagSubLoader", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/AbstractSubLoader"], function(e, t) {
        function o(e) {
            this._initOptions("_html_tags", e)
        }
        return o.prototype = new t, o.prototype._doLoadFile = function(e, t, o) {
            var n = document.createElement(this.options.tagName);
            if (n.onload = function() {
                    t(n)
                }, n.onerror = o, this.options.parentTag && this.options.parentTag.appendChild(n), this.options.tagAttributes)
                for (var r in this.options.tagAttributes) n.setAttribute(r, this.options.tagAttributes[r]);
            n.src = e
        }, o
    }), define("skbJet/component/resourceLoader/subLoaders/TextFilesSubLoader", ["skbJet/component/resourceLoader/Util", "skbJet/component/resourceLoader/AbstractSubLoader"], function(e, t) {
        function o(e) {
            this._initOptions("_text_files", e)
        }
        return o.prototype = new t, o.prototype._doLoadFile = function(t, o, n) {
            "json" === e.getFileExt(t, !0) && this.options.parseJson ? e.httpGetJson(t, o, n) : e.httpGetText(t, o, n)
        }, o
    }), define("skbJet/componentCRDC/splash/splashLoadController", ["skbJet/component/resourceLoader/ResourceLoader", "skbJet/component/resourceLoader/subLoaders/HtmlTagSubLoader", "skbJet/component/resourceLoader/subLoaders/TextFilesSubLoader"], function(e, t, o) {
        function n(e, n) {
            var r = new o({
                type: "i18n",
                parseJson: !0
            });
            r.origLoad = r.load, r.load = function(e, t) {
                for (var o in e) o.match(/splash\.json$/) || delete e[o];
                this.origLoad(e, t)
            }, n.addSubLoader("i18n", r), n.addSubLoader("splash", new t({
                type: "splash",
                tagName: "img"
            })), n.load(function() {
                n.currentProgress().complete && e && e()
            }, function() {})
        }

        function r(t) {
            var o = window.location.search.match(/&?assetPack=(\w+)&?/)[1],
                r = window.location.search.match(/&?language=([^&]+)&?/)[1],
                i = window.location.search.match(/&?skincode=(\w+)&?/)[1];
            e.initDefault("assetPacks/" + o, r, i), n(t, e.getDefault())
        }
        return {
            load: r,
            loadByLoader: n
        }
    }), define("splash", ["skbJet/component/resourceLoader/resourceLib", "skbJet/componentCRDC/splash/splashLoadController"], function(e, t) {
        function o() {
            var e = Math.floor(Number(window.innerWidth)),
                t = Math.floor(Number(window.innerHeight));
            L = e >= t ? f : y
        }

        function n(e) {
            return Math.round(e * m) + "px"
        }

        function r() {
            o();
            var e = L,
                t = Math.floor(Number(window.innerWidth)),
                r = Math.floor(Number(window.innerHeight));
            document.documentElement.style.width = t + "px", document.documentElement.style.height = r + "px", document.body.style.width = t + "px", document.body.style.height = r + "px";
            var i, a, s, h, f = e.loadDiv.width + (t > r ? 2 * e.loadDiv.left : 0),
                y = e.loadDiv.height,
                v = f / y;
            t / r > v ? (i = Math.floor(r * v), a = r, s = Math.floor((t - i) / 2), h = 0) : (i = t, a = Math.floor(t / v), s = 0, h = Math.floor((r - a) / 2)), d.style.width = i + "px", d.style.height = a + "px", d.style.left = s + "px", d.style.top = h + "px", m = i / f, l.style.width = n(e.loadInnerBox.width), l.style.height = n(e.loadInnerBox.height), u.style.top = n(e.gameImgDiv.top), u.style.width = n(e.gameImgDiv.width), u.style.height = n(e.gameImgDiv.height), p.style.top = n(e.gameImgDiv.top + e.gameImgDiv.height), p.style.width = n(e.loadDiv.width), p.style.height = n(e.featureTextDiv.height), p.style.padding = n(e.featureTextDiv.padding), p.style.fontSize = n(e.featureTextDiv.fontSize), c.style.top = n(e.gameImgDiv.top + e.gameImgDiv.height + e.featureTextDiv.height + 2 * e.featureTextDiv.padding), c.style.left = n((e.loadDiv.width - e.progressBarDiv.width) / 2), c.style.width = n(e.progressBarDiv.width), c.style.height = n(e.progressBarDiv.height), c.style.padding = n(e.progressBarDiv.padding), g.style.bottom = n(e.copyRightDiv.bottom), g.style.fontSize = n(e.copyRightDiv.fontSize)
        }

        function i(e) {
            var t = e.data.loaded || null;
            null !== t && (h.style.width = t + "%")
        }

        function a() {
            o(), window.addEventListener("message", i, !1)
        }

        function s() {
            var t = document.createElement("div"),
                o = document.createElement("div"),
                n = document.createElement("img"),
                r = document.createElement("span");
            o.appendChild(r), o.appendChild(n), o.id = "iconDiv", o.style.position = "absolute", o.style.width = "100%", o.style.height = "100%", o.style.textAlign = "center", r.style.height = "100%", r.style.lineHeight = "100%", r.style.verticalAlign = "middle", r.style.display = "inline-block", r.style.fontFamily = "Times New Roman", r.style.fontWeight = 900, r.style.color = "#F97B00", r.style.textShadow = "0.5px 0.5px 0.5px #000", r.innerHTML = e.i18n.splash.splashScreen.FEATURING, n.style.width = "70%", n.style.marginLeft = "4px", n.src = e.splash.loadingIcon.src;
            var i = document.createElement("div"),
                s = document.createElement("div"),
                d = document.createElement("img"),
                l = document.createElement("img");
            t.appendChild(i), t.appendChild(s), i.appendChild(d), s.appendChild(l), t.id = "logoDiv", t.style.position = "absolute", t.style.width = "100%", t.style.bottom = "40px", i.style.float = "left", i.style.marginLeft = "2%", s.style.float = "right", s.style.marginRight = "2%", i.style.width = "10%", s.style.width = "12%", d.src = e.splash.igtKingShowLogo1.src, l.src = e.splash.igtKingShowLogo2.src, d.style.width = "100%", l.style.width = "100%", document.body.appendChild(t), document.body.appendChild(o), document.getElementById("featureTextDiv").appendChild(o), document.body.style.backgroundImage = "url(" + e.splash.loadBG.src + ")", document.getElementById("gameImgDiv").style.backgroundImage = "url(" + e.splash.loading.src + ")", document.getElementById("progressBarDiv").style.backgroundColor = "#666666", document.getElementById("progressBarDiv").style.borderRadius = "8px", document.getElementById("progressBarDiv").style.marginTop = "8px", document.getElementById("progressDiv").style.backgroundColor = "#FFD900", document.getElementById("progressDiv").style.left = "0", document.getElementById("progressDiv").style.top = "0", document.getElementById("progressDiv").style.borderRadius = "8px", document.getElementById("progressDiv").style.background = "-webkit-linear-gradient(left,#FFD900,#FF3300,#FFD900)", document.getElementById("progressDiv").style.background = "-o-linear-gradient(left,#FFD900,#FF3300,#FFD900)", document.getElementById("progressDiv").style.background = "-moz-linear-gradient(left,#FFD900,#FF3300,#FFD900)", document.getElementById("progressDiv").style.background = "-ms-linear-gradient(left,#FFD900,#FF3300,#FFD900)", document.getElementById("progressDiv").style.background = "linear-gradient(to right,#FFD900,#FF3300,#FFD900);";
            var u = document.getElementById("copyRightDiv");
            u.innerHTML = e.i18n.splash.splashScreen.footer.shortVersion, u.style.color = "#FFFFFF", u.style.width = "70%", u.style.left = "15%", a()
        }
        var d, l, u, c, h, p, g, m = 1,
            f = {
                loadDiv: {
                    width: 1040,
                    height: 960,
                    left: 440
                },
                loadInnerBox: {
                    width: 1130,
                    height: 807
                },
                gameImgDiv: {
                    width: 1130,
                    height: 630,
                    top: 100
                },
                featureTextDiv: {
                    height: 44,
                    padding: 4,
                    fontSize: 25,
                    userSelect: "none"
                },
                progressBarDiv: {
                    width: 820,
                    height: 16,
                    padding: 4
                },
                progressDiv: {},
                copyRightDiv: {
                    bottom: 15,
                    fontSize: 24,
                    fontFamily: 'Arial, "San serif"'
                }
            },
            y = {
                loadDiv: {
                    width: 1040,
                    height: 960,
                    left: 440
                },
                loadInnerBox: {
                    width: 1044,
                    height: 760
                },
                gameImgDiv: {
                    width: 1044,
                    height: 582,
                    top: 100
                },
                featureTextDiv: {
                    height: 44,
                    padding: 4,
                    fontSize: 25,
                    userSelect: "none"
                },
                progressBarDiv: {
                    width: 820,
                    height: 16,
                    padding: 4
                },
                progressDiv: {},
                copyRightDiv: {
                    bottom: 15,
                    fontSize: 24,
                    fontFamily: 'Arial, "San serif"'
                }
            },
            L = f;
        return function() {
            o(), d = document.createElement("div"), d.id = "loadDiv", document.body.appendChild(d), d.style.position = "absolute", l = document.createElement("div"), l.id = "loadInnerBox", d.appendChild(l), l.style.position = "relative", l.style.margin = "0 auto", u = document.createElement("div"), u.id = "gameImgDiv", l.appendChild(u), u.style.position = "absolute", u.style.backgroundSize = "contain", u.style.backgroundRepeat = "no-repeat", u.style.left = 0, p = document.createElement("div"), p.id = "featureTextDiv", l.appendChild(p), p.style.position = "absolute", p.style.textAlign = "center", p.style.fontFamily = "Times New Roman", p.style.userSelect = "none", c = document.createElement("div"), c.id = "progressBarDiv", l.appendChild(c), c.style.position = "absolute", c.style.backgroundSize = "cover", h = document.createElement("div"), h.id = "progressDiv", c.appendChild(h), h.style.width = "0", h.style.height = "100%", h.style.position = "absolute", h.style.backgroundSize = "cover", g = document.createElement("div"), g.id = "copyRightDiv", document.body.appendChild(g), g.style.position = "absolute", g.style.width = "100%", g.style.textAlign = "center", g.style.fontFamily = L.copyRightDiv.fontFamily
        }(), r(), window.addEventListener("resize", r), t.load(s), {}
    })
}();