define("smashThePigAssembly", ["smashThePigWinSymbolsDeclaration", "smashthepigComponentsTensionPort", "smashThePigWinAnimatorPort", "smashThePigWinFramesDeclaration", "componentmodelComponentApi", "smashThePigComponentsTensionDeclaration", "slotModelApi", "winMeterApi", "reelsApi", "smashthepigComponentsLuckMeterPort", "smashThePigScaterSymbolsDeclaration", "soundManagerApi", "gameLayoutApi", "componentmodelAssemblyApi", "smashthepigComponentsReelPickerPort", "smashThePigComponentsGameControllerDeclaration", "clientkernelEventbusApi", "infoBarApi", "smashthepigComponentsBackgroundPort", "smashThePigComponentsBannerDeclaration", "clientkernelModulesApi", "smashthepigComponentsBannerPort", "smashthepigComponentsPickerPort", "paytableApi", "smashthepigComponentsAnimationDeclaration", "betPanelApi", "moneyApi", "smashThePigComponentsAnimationPort", "RulesDeclaration"],
    function(smashThePigWinSymbolsDeclaration, smashthepigComponentsTensionPort, smashThePigWinAnimatorPort, smashThePigWinFramesDeclaration, componentmodelComponentApi, smashThePigComponentsTensionDeclaration, slotModelApi, winMeterApi, reelsApi, smashthepigComponentsLuckMeterPort, smashThePigScaterSymbolsDeclaration, soundManagerApi, gameLayoutApi, componentmodelAssemblyApi, smashthepigComponentsReelPickerPort, smashThePigComponentsGameControllerDeclaration, clientkernelEventbusApi, infoBarApi, smashthepigComponentsBackgroundPort, smashThePigComponentsBannerDeclaration, clientkernelModulesApi, smashthepigComponentsBannerPort, smashthepigComponentsPickerPort, paytableApi, smashthepigComponentsAnimationDeclaration, betPanelApi, moneyApi, smashThePigComponentsAnimationPort, RulesDeclaration) {
        "use strict";

        function $iterator(o) {
            if (o instanceof Array) return function() {
                return {
                    cur: 0,
                    arr: o,
                    hasNext: function() {
                        return this.cur < this.arr.length;
                    },
                    next: function() {
                        return this.arr[this.cur++];
                    }
                };
            };
            return typeof(o.iterator) == 'function' ? $bind(o, o.iterator) : o.iterator;
        };;
        var $fid = 0;

        function $bind(o, m) {
            if (m == null) return null;
            if (m.__id__ == null) m.__id__ = $fid++;
            var f;
            if (o.hx__closures__ == null) o.hx__closures__ = {};
            else f = o.hx__closures__[m.__id__];
            if (f == null) {
                f = function() {
                    return f.method.apply(f.scope, arguments);
                };
                f.scope = o;
                f.method = m;
                o.hx__closures__[m.__id__] = f;
            }
            return f;
        };
        var $_;
        var $estr = function() {
            return _hcmn_.js_Boot.__string_rec(this, '');
        };
        if (typeof haxe == 'undefined') {
            var haxe = {};
        };

        haxe.IMap = function() {}
        haxe.IMap.prototype = {

        };
        if (typeof js == 'undefined') {
            var js = {};
        };
        if (!js._Boot) {
            js._Boot = {};
        };
        js._Boot.HaxeError = function(val) {
            Error.call(this);
            this.val = val;
            this.message = String(val);
            if (Error.captureStackTrace) Error.captureStackTrace(this, js._Boot.HaxeError);
        };
        js._Boot.HaxeError.__name__ = ["js", "_Boot", "HaxeError"];
        js._Boot.HaxeError.__super__ = Error;
        for (var k in Error.prototype) js._Boot.HaxeError.prototype[k] = Error.prototype[k];
        js._Boot.HaxeError.prototype.val = null;
        js._Boot.HaxeError.prototype.__class__ = js._Boot.HaxeError;
        if (typeof smashThePigAssembly == 'undefined') {
            var smashThePigAssembly = {};
        };
        smashThePigAssembly.Activator = function() {};
        smashThePigAssembly.Activator = ck_implements(smashThePigAssembly.Activator, clientkernelModulesApi.IModuleActivator);
        smashThePigAssembly.Activator.__interfaces__ = [clientkernelModulesApi.IModuleActivator];
        smashThePigAssembly.Activator.__name__ = ["smashThePigAssembly", "Activator"];
        smashThePigAssembly.Activator.prototype.start = function(context) {
            var game = new smashThePigAssembly.SmashThePigAssembly(context);
            game.start(context);
        };
        smashThePigAssembly.Activator.prototype.stop = function(context) {};
        smashThePigAssembly.Activator.main = function() {};
        smashThePigAssembly.Activator.prototype.__class__ = smashThePigAssembly.Activator;
        if (typeof smashthepig == 'undefined') {
            var smashthepig = {};
        };
        if (!smashthepig.assembly) {
            smashthepig.assembly = {};
        };
        smashthepig.assembly.Ports = {
            __ename__: ["smashthepig", "assembly", "Ports"],
            __constructs__: ["P_SLOTMODEL", "P_SLOTMODELOUTCOME", "P_SLOTMODELINIT", "P_BETPANEL", "P_REELS", "P_GAMELAYOUT", "P_SOUNDPLAYER", "P_ANIMATION", "P_WIN_ANIMATOR", "P_BANNER", "P_REELPICKER", "P_PICKER", "P_PAYTABLE", "P_LUCKMETER", "P_INFOBAR", "P_WINMETER", "P_TENSION", "P_BACKGROUND"]
        };
        smashthepig.assembly.Ports.P_INFOBAR = ["P_INFOBAR", 14];
        smashthepig.assembly.Ports.P_INFOBAR.toString = $estr;
        smashthepig.assembly.Ports.P_INFOBAR.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_WINMETER = ["P_WINMETER", 15];
        smashthepig.assembly.Ports.P_WINMETER.toString = $estr;
        smashthepig.assembly.Ports.P_WINMETER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_SLOTMODELINIT = ["P_SLOTMODELINIT", 2];
        smashthepig.assembly.Ports.P_SLOTMODELINIT.toString = $estr;
        smashthepig.assembly.Ports.P_SLOTMODELINIT.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_WIN_ANIMATOR = ["P_WIN_ANIMATOR", 8];
        smashthepig.assembly.Ports.P_WIN_ANIMATOR.toString = $estr;
        smashthepig.assembly.Ports.P_WIN_ANIMATOR.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_ANIMATION = ["P_ANIMATION", 7];
        smashthepig.assembly.Ports.P_ANIMATION.toString = $estr;
        smashthepig.assembly.Ports.P_ANIMATION.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_BANNER = ["P_BANNER", 9];
        smashthepig.assembly.Ports.P_BANNER.toString = $estr;
        smashthepig.assembly.Ports.P_BANNER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_GAMELAYOUT = ["P_GAMELAYOUT", 5];
        smashthepig.assembly.Ports.P_GAMELAYOUT.toString = $estr;
        smashthepig.assembly.Ports.P_GAMELAYOUT.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_BACKGROUND = ["P_BACKGROUND", 17];
        smashthepig.assembly.Ports.P_BACKGROUND.toString = $estr;
        smashthepig.assembly.Ports.P_BACKGROUND.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_SLOTMODEL = ["P_SLOTMODEL", 0];
        smashthepig.assembly.Ports.P_SLOTMODEL.toString = $estr;
        smashthepig.assembly.Ports.P_SLOTMODEL.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_TENSION = ["P_TENSION", 16];
        smashthepig.assembly.Ports.P_TENSION.toString = $estr;
        smashthepig.assembly.Ports.P_TENSION.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_BETPANEL = ["P_BETPANEL", 3];
        smashthepig.assembly.Ports.P_BETPANEL.toString = $estr;
        smashthepig.assembly.Ports.P_BETPANEL.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_PICKER = ["P_PICKER", 11];
        smashthepig.assembly.Ports.P_PICKER.toString = $estr;
        smashthepig.assembly.Ports.P_PICKER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_REELS = ["P_REELS", 4];
        smashthepig.assembly.Ports.P_REELS.toString = $estr;
        smashthepig.assembly.Ports.P_REELS.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_PAYTABLE = ["P_PAYTABLE", 12];
        smashthepig.assembly.Ports.P_PAYTABLE.toString = $estr;
        smashthepig.assembly.Ports.P_PAYTABLE.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_SLOTMODELOUTCOME = ["P_SLOTMODELOUTCOME", 1];
        smashthepig.assembly.Ports.P_SLOTMODELOUTCOME.toString = $estr;
        smashthepig.assembly.Ports.P_SLOTMODELOUTCOME.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_LUCKMETER = ["P_LUCKMETER", 13];
        smashthepig.assembly.Ports.P_LUCKMETER.toString = $estr;
        smashthepig.assembly.Ports.P_LUCKMETER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_REELPICKER = ["P_REELPICKER", 10];
        smashthepig.assembly.Ports.P_REELPICKER.toString = $estr;
        smashthepig.assembly.Ports.P_REELPICKER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Ports.P_SOUNDPLAYER = ["P_SOUNDPLAYER", 6];
        smashthepig.assembly.Ports.P_SOUNDPLAYER.toString = $estr;
        smashthepig.assembly.Ports.P_SOUNDPLAYER.__enum__ = smashthepig.assembly.Ports;
        smashthepig.assembly.Buses = {
            __ename__: ["smashthepig", "assembly", "Buses"],
            __constructs__: ["B_GF"]
        };
        smashthepig.assembly.Buses.B_GF = ["B_GF", 0];
        smashthepig.assembly.Buses.B_GF.toString = $estr;
        smashthepig.assembly.Buses.B_GF.__enum__ = smashthepig.assembly.Buses;
        smashthepig.assembly.ComponentFactories = {
            __ename__: ["smashthepig", "assembly", "ComponentFactories"],
            __constructs__: ["CF_SLOTMODEL", "CF_BETPANEL", "CF_REELS", "CF_GAMELAYOUT", "CF_ANIMATION", "CF_WIN_ANIMATOR", "CF_GAMECONTROLLER", "CF_WINFRAMES", "CF_WINSYMBOLS", "CF_SCATERSYMBOLS", "CF_BANNER", "CF_PAYTABLE", "CF_REELPICKER", "CF_PICKER", "CF_LUCKMETER", "CF_INFOBAR", "CF_WINMETER", "CF_SOUNDPLAYER", "CF_TENSION", "CF_BACKGROUND", "CF_RULES"]
        };
        smashthepig.assembly.ComponentFactories.CF_ANIMATION = ["CF_ANIMATION", 4];
        smashthepig.assembly.ComponentFactories.CF_ANIMATION.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_ANIMATION.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_SCATERSYMBOLS = ["CF_SCATERSYMBOLS", 9];
        smashthepig.assembly.ComponentFactories.CF_SCATERSYMBOLS.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_SCATERSYMBOLS.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_REELPICKER = ["CF_REELPICKER", 12];
        smashthepig.assembly.ComponentFactories.CF_REELPICKER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_REELPICKER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_SLOTMODEL = ["CF_SLOTMODEL", 0];
        smashthepig.assembly.ComponentFactories.CF_SLOTMODEL.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_SLOTMODEL.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_BACKGROUND = ["CF_BACKGROUND", 19];
        smashthepig.assembly.ComponentFactories.CF_BACKGROUND.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_BACKGROUND.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_GAMECONTROLLER = ["CF_GAMECONTROLLER", 6];
        smashthepig.assembly.ComponentFactories.CF_GAMECONTROLLER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_GAMECONTROLLER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_WIN_ANIMATOR = ["CF_WIN_ANIMATOR", 5];
        smashthepig.assembly.ComponentFactories.CF_WIN_ANIMATOR.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_WIN_ANIMATOR.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_BETPANEL = ["CF_BETPANEL", 1];
        smashthepig.assembly.ComponentFactories.CF_BETPANEL.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_BETPANEL.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_PAYTABLE = ["CF_PAYTABLE", 11];
        smashthepig.assembly.ComponentFactories.CF_PAYTABLE.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_PAYTABLE.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_PICKER = ["CF_PICKER", 13];
        smashthepig.assembly.ComponentFactories.CF_PICKER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_PICKER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_SOUNDPLAYER = ["CF_SOUNDPLAYER", 17];
        smashthepig.assembly.ComponentFactories.CF_SOUNDPLAYER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_SOUNDPLAYER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_WINFRAMES = ["CF_WINFRAMES", 7];
        smashthepig.assembly.ComponentFactories.CF_WINFRAMES.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_WINFRAMES.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_BANNER = ["CF_BANNER", 10];
        smashthepig.assembly.ComponentFactories.CF_BANNER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_BANNER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_LUCKMETER = ["CF_LUCKMETER", 14];
        smashthepig.assembly.ComponentFactories.CF_LUCKMETER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_LUCKMETER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_TENSION = ["CF_TENSION", 18];
        smashthepig.assembly.ComponentFactories.CF_TENSION.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_TENSION.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_GAMELAYOUT = ["CF_GAMELAYOUT", 3];
        smashthepig.assembly.ComponentFactories.CF_GAMELAYOUT.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_GAMELAYOUT.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_INFOBAR = ["CF_INFOBAR", 15];
        smashthepig.assembly.ComponentFactories.CF_INFOBAR.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_INFOBAR.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_RULES = ["CF_RULES", 20];
        smashthepig.assembly.ComponentFactories.CF_RULES.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_RULES.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_WINMETER = ["CF_WINMETER", 16];
        smashthepig.assembly.ComponentFactories.CF_WINMETER.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_WINMETER.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_REELS = ["CF_REELS", 2];
        smashthepig.assembly.ComponentFactories.CF_REELS.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_REELS.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.ComponentFactories.CF_WINSYMBOLS = ["CF_WINSYMBOLS", 8];
        smashthepig.assembly.ComponentFactories.CF_WINSYMBOLS.toString = $estr;
        smashthepig.assembly.ComponentFactories.CF_WINSYMBOLS.__enum__ = smashthepig.assembly.ComponentFactories;
        smashthepig.assembly.Components = {
            __ename__: ["smashthepig", "assembly", "Components"],
            __constructs__: ["C_SLOTMODEL", "C_BETPANEL", "C_REELS", "C_GAMELAYOUT", "C_GAMECONTROLLER", "C_LOGO", "C_REELFRONTFRAME", "C_REELBACKGROUND", "C_REELFOREGROUND", "C_WINCAPPOPUP", "C_WIN_ANIMATOR", "C_WINFRAMES", "C_WINSYMBOLS", "C_SCATERSYMBOLS", "C_BANNER", "C_PAYTABLE", "C_REELPICKER", "C_PICKER", "C_LUCKMETER", "C_INFOBAR", "C_WINMETER", "C_SOUNDPLAYER", "C_TENSION", "C_BACKGROUND", "C_RULES"]
        };
        smashthepig.assembly.Components.C_SLOTMODEL = ["C_SLOTMODEL", 0];
        smashthepig.assembly.Components.C_SLOTMODEL.toString = $estr;
        smashthepig.assembly.Components.C_SLOTMODEL.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_TENSION = ["C_TENSION", 22];
        smashthepig.assembly.Components.C_TENSION.toString = $estr;
        smashthepig.assembly.Components.C_TENSION.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_BANNER = ["C_BANNER", 14];
        smashthepig.assembly.Components.C_BANNER.toString = $estr;
        smashthepig.assembly.Components.C_BANNER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_WIN_ANIMATOR = ["C_WIN_ANIMATOR", 10];
        smashthepig.assembly.Components.C_WIN_ANIMATOR.toString = $estr;
        smashthepig.assembly.Components.C_WIN_ANIMATOR.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_GAMECONTROLLER = ["C_GAMECONTROLLER", 4];
        smashthepig.assembly.Components.C_GAMECONTROLLER.toString = $estr;
        smashthepig.assembly.Components.C_GAMECONTROLLER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_SCATERSYMBOLS = ["C_SCATERSYMBOLS", 13];
        smashthepig.assembly.Components.C_SCATERSYMBOLS.toString = $estr;
        smashthepig.assembly.Components.C_SCATERSYMBOLS.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_PICKER = ["C_PICKER", 17];
        smashthepig.assembly.Components.C_PICKER.toString = $estr;
        smashthepig.assembly.Components.C_PICKER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_LOGO = ["C_LOGO", 5];
        smashthepig.assembly.Components.C_LOGO.toString = $estr;
        smashthepig.assembly.Components.C_LOGO.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_REELS = ["C_REELS", 2];
        smashthepig.assembly.Components.C_REELS.toString = $estr;
        smashthepig.assembly.Components.C_REELS.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_REELFRONTFRAME = ["C_REELFRONTFRAME", 6];
        smashthepig.assembly.Components.C_REELFRONTFRAME.toString = $estr;
        smashthepig.assembly.Components.C_REELFRONTFRAME.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_SOUNDPLAYER = ["C_SOUNDPLAYER", 21];
        smashthepig.assembly.Components.C_SOUNDPLAYER.toString = $estr;
        smashthepig.assembly.Components.C_SOUNDPLAYER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_REELBACKGROUND = ["C_REELBACKGROUND", 7];
        smashthepig.assembly.Components.C_REELBACKGROUND.toString = $estr;
        smashthepig.assembly.Components.C_REELBACKGROUND.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_REELFOREGROUND = ["C_REELFOREGROUND", 8];
        smashthepig.assembly.Components.C_REELFOREGROUND.toString = $estr;
        smashthepig.assembly.Components.C_REELFOREGROUND.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_WINMETER = ["C_WINMETER", 20];
        smashthepig.assembly.Components.C_WINMETER.toString = $estr;
        smashthepig.assembly.Components.C_WINMETER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_WINSYMBOLS = ["C_WINSYMBOLS", 12];
        smashthepig.assembly.Components.C_WINSYMBOLS.toString = $estr;
        smashthepig.assembly.Components.C_WINSYMBOLS.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_PAYTABLE = ["C_PAYTABLE", 15];
        smashthepig.assembly.Components.C_PAYTABLE.toString = $estr;
        smashthepig.assembly.Components.C_PAYTABLE.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_LUCKMETER = ["C_LUCKMETER", 18];
        smashthepig.assembly.Components.C_LUCKMETER.toString = $estr;
        smashthepig.assembly.Components.C_LUCKMETER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_BETPANEL = ["C_BETPANEL", 1];
        smashthepig.assembly.Components.C_BETPANEL.toString = $estr;
        smashthepig.assembly.Components.C_BETPANEL.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_WINFRAMES = ["C_WINFRAMES", 11];
        smashthepig.assembly.Components.C_WINFRAMES.toString = $estr;
        smashthepig.assembly.Components.C_WINFRAMES.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_BACKGROUND = ["C_BACKGROUND", 23];
        smashthepig.assembly.Components.C_BACKGROUND.toString = $estr;
        smashthepig.assembly.Components.C_BACKGROUND.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_GAMELAYOUT = ["C_GAMELAYOUT", 3];
        smashthepig.assembly.Components.C_GAMELAYOUT.toString = $estr;
        smashthepig.assembly.Components.C_GAMELAYOUT.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_INFOBAR = ["C_INFOBAR", 19];
        smashthepig.assembly.Components.C_INFOBAR.toString = $estr;
        smashthepig.assembly.Components.C_INFOBAR.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_REELPICKER = ["C_REELPICKER", 16];
        smashthepig.assembly.Components.C_REELPICKER.toString = $estr;
        smashthepig.assembly.Components.C_REELPICKER.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_RULES = ["C_RULES", 24];
        smashthepig.assembly.Components.C_RULES.toString = $estr;
        smashthepig.assembly.Components.C_RULES.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Components.C_WINCAPPOPUP = ["C_WINCAPPOPUP", 9];
        smashthepig.assembly.Components.C_WINCAPPOPUP.toString = $estr;
        smashthepig.assembly.Components.C_WINCAPPOPUP.__enum__ = smashthepig.assembly.Components;
        smashthepig.assembly.Channel = {
            __ename__: ["smashthepig", "assembly", "Channel"],
            __constructs__: ["CH_ALL"]
        };
        smashthepig.assembly.Channel.CH_ALL = ["CH_ALL", 0];
        smashthepig.assembly.Channel.CH_ALL.toString = $estr;
        smashthepig.assembly.Channel.CH_ALL.__enum__ = smashthepig.assembly.Channel;
        smashThePigAssembly.SmashThePigAssembly = function(context) {};
        smashThePigAssembly.SmashThePigAssembly.__name__ = ["smashThePigAssembly", "SmashThePigAssembly"];
        smashThePigAssembly.SmashThePigAssembly.prototype.start = function(context) {
            return context.getServiceTracker([componentmodelAssemblyApi.IGameAssemblyFactory]).then(function(context1) {
                return (_hcmn_.js_Boot.__cast(context1.getAnyService(componentmodelAssemblyApi.IGameAssemblyFactory, null), componentmodelAssemblyApi.IGameAssemblyFactory)).create().declare().buses().bus(smashthepig.assembly.Buses.B_GF, "GFBus").end().ports().port(smashthepig.assembly.Ports.P_SLOTMODEL, new slotModelApi.SlotModelPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_SLOTMODELOUTCOME, new slotModelApi.OutcomePhasePortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_SLOTMODELINIT, new slotModelApi.InitializeGamePhasePortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_BETPANEL, new betPanelApi.BetPanelPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_REELS, new reelsApi.ReelsPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_ANIMATION, null, new smashThePigComponentsAnimationPort.AnimationPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_GAMELAYOUT, null, new gameLayoutApi.GameLayoutPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_WIN_ANIMATOR, new smashThePigWinAnimatorPort.WinAnimatorPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_BANNER, new smashthepigComponentsBannerPort.BannerPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_PAYTABLE, new paytableApi.PaytablePortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_REELPICKER, new smashthepigComponentsReelPickerPort.ReelPickerPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_PICKER, new smashthepigComponentsPickerPort.PickerPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_LUCKMETER, new smashthepigComponentsLuckMeterPort.LuckMeterPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_INFOBAR, new infoBarApi.InfoBarPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_WINMETER, new winMeterApi.WinMeterPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_SOUNDPLAYER, new soundManagerApi.SoundManagerPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_TENSION, new smashthepigComponentsTensionPort.TensionPortFactory()).connect(smashthepig.assembly.Buses.B_GF).port(smashthepig.assembly.Ports.P_BACKGROUND, new smashthepigComponentsBackgroundPort.BackgroundPortFactory()).connect(smashthepig.assembly.Buses.B_GF).end().componentFactiries().componentFactory(smashthepig.assembly.ComponentFactories.CF_GAMECONTROLLER, smashThePigComponentsGameControllerDeclaration.GameControllerDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_SLOTMODEL, slotModelApi.SlotModelDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_BETPANEL, betPanelApi.BetPanelDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_REELS, reelsApi.ReelsDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_ANIMATION, smashthepigComponentsAnimationDeclaration.AnimationDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_GAMELAYOUT, gameLayoutApi.GameLayoutDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_WIN_ANIMATOR, smashThePigWinAnimatorPort.WinAnimatorDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_WINFRAMES, smashThePigWinFramesDeclaration.WinFramesDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_WINSYMBOLS, smashThePigWinSymbolsDeclaration.WinSymbolsDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_SCATERSYMBOLS, smashThePigScaterSymbolsDeclaration.ScaterSymbolsDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_BANNER, smashThePigComponentsBannerDeclaration.BannerDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_PAYTABLE, paytableApi.PaytableDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_REELPICKER, smashthepigComponentsReelPickerPort.ReelPickerDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_PICKER, smashthepigComponentsPickerPort.PickerDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_LUCKMETER, smashthepigComponentsLuckMeterPort.LuckMeterDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_INFOBAR, infoBarApi.InfoBarDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_WINMETER, winMeterApi.WinMeterDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_SOUNDPLAYER, soundManagerApi.SoundManagerDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_TENSION, smashThePigComponentsTensionDeclaration.TensionDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_BACKGROUND, smashthepigComponentsBackgroundPort.BackgroundDeclaration).componentFactory(smashthepig.assembly.ComponentFactories.CF_RULES, RulesDeclaration.RulesDeclaration).end().end().implement().channel(smashthepig.assembly.Channel.CH_ALL).components().component(null, null, smashthepig.assembly.Components.C_SLOTMODEL, smashthepig.assembly.ComponentFactories.CF_SLOTMODEL).implement(smashthepig.assembly.Ports.P_SLOTMODEL).end().component(null, null, smashthepig.assembly.Components.C_WIN_ANIMATOR, smashthepig.assembly.ComponentFactories.CF_WIN_ANIMATOR).implement(smashthepig.assembly.Ports.P_WIN_ANIMATOR)["use"](smashthepig.assembly.Ports.P_SLOTMODELOUTCOME)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_BETPANEL, smashthepig.assembly.ComponentFactories.CF_BETPANEL).implement(smashthepig.assembly.Ports.P_BETPANEL)["use"](smashthepig.assembly.Ports.P_SLOTMODEL)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_REELS, smashthepig.assembly.ComponentFactories.CF_REELS).implement(smashthepig.assembly.Ports.P_REELS)["use"](smashthepig.assembly.Ports.P_SLOTMODEL)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_GAMELAYOUT, smashthepig.assembly.ComponentFactories.CF_GAMELAYOUT).implement(smashthepig.assembly.Ports.P_GAMELAYOUT)["use"](smashthepig.assembly.Ports.P_SLOTMODEL).has().reference("layout", "reels", smashthepig.assembly.Components.C_REELS).reference("layout", "betpanel", smashthepig.assembly.Components.C_BETPANEL).reference("wait", "gamecontroller", smashthepig.assembly.Components.C_GAMECONTROLLER).reference("layout", "reelsbackground", smashthepig.assembly.Components.C_REELBACKGROUND).reference("layout", "reelforeground", smashthepig.assembly.Components.C_REELFOREGROUND).reference("layout", "wincappopup", smashthepig.assembly.Components.C_WINCAPPOPUP).reference("layout", "winanimator", smashthepig.assembly.Components.C_WIN_ANIMATOR).reference("layout", "winframes", smashthepig.assembly.Components.C_WINFRAMES).reference("layout", "winsymbols", smashthepig.assembly.Components.C_WINSYMBOLS).reference("layout", "scatersymbols", smashthepig.assembly.Components.C_SCATERSYMBOLS).reference("layout", "banner", smashthepig.assembly.Components.C_BANNER).reference("layout", "reelpicker", smashthepig.assembly.Components.C_REELPICKER).reference("layout", "picker", smashthepig.assembly.Components.C_PICKER).reference("layout", "luck-meter", smashthepig.assembly.Components.C_LUCKMETER).reference("layout", "infobar", smashthepig.assembly.Components.C_INFOBAR).reference("layout", "winmeter", smashthepig.assembly.Components.C_WINMETER).reference("layout", "tension", smashthepig.assembly.Components.C_TENSION).end().end().component(null, null, smashthepig.assembly.Components.C_WINMETER, smashthepig.assembly.ComponentFactories.CF_WINMETER).implement(smashthepig.assembly.Ports.P_WINMETER)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT)["use"](smashthepig.assembly.Ports.P_SLOTMODEL).end().component(null, null, smashthepig.assembly.Components.C_RULES, smashthepig.assembly.ComponentFactories.CF_RULES)["use"](smashthepig.assembly.Ports.P_SLOTMODEL).end().component(null, null, smashthepig.assembly.Components.C_REELBACKGROUND, smashthepig.assembly.ComponentFactories.CF_ANIMATION).implement(smashthepig.assembly.Ports.P_ANIMATION)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).configure("reel-background-assets/reel_background_config_json").end().component(null, null, smashthepig.assembly.Components.C_LOGO, smashthepig.assembly.ComponentFactories.CF_ANIMATION).implement(smashthepig.assembly.Ports.P_ANIMATION)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).configure("logo-assets/logo_config_json").end().component(null, null, smashthepig.assembly.Components.C_REELFOREGROUND, smashthepig.assembly.ComponentFactories.CF_ANIMATION).implement(smashthepig.assembly.Ports.P_ANIMATION)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).configure("reel-foreground-assets/reel_foreground_config_json").end().component(null, null, smashthepig.assembly.Components.C_WINCAPPOPUP, smashthepig.assembly.ComponentFactories.CF_ANIMATION).implement(smashthepig.assembly.Ports.P_ANIMATION)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).configure("win-cap-pop-up-assets/win_cap_pop_up_config_json").end().component(null, null, smashthepig.assembly.Components.C_WINFRAMES, smashthepig.assembly.ComponentFactories.CF_WINFRAMES)["use"](smashthepig.assembly.Ports.P_WIN_ANIMATOR)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_INFOBAR, smashthepig.assembly.ComponentFactories.CF_INFOBAR).implement(smashthepig.assembly.Ports.P_INFOBAR)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_WINSYMBOLS, smashthepig.assembly.ComponentFactories.CF_WINSYMBOLS)["use"](smashthepig.assembly.Ports.P_WIN_ANIMATOR)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_SCATERSYMBOLS, smashthepig.assembly.ComponentFactories.CF_SCATERSYMBOLS)["use"](smashthepig.assembly.Ports.P_WIN_ANIMATOR)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_BANNER, smashthepig.assembly.ComponentFactories.CF_BANNER).implement(smashthepig.assembly.Ports.P_BANNER)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_PAYTABLE, smashthepig.assembly.ComponentFactories.CF_PAYTABLE).implement(smashthepig.assembly.Ports.P_PAYTABLE)["use"](smashthepig.assembly.Ports.P_SLOTMODEL).end().component(null, null, smashthepig.assembly.Components.C_REELPICKER, smashthepig.assembly.ComponentFactories.CF_REELPICKER).implement(smashthepig.assembly.Ports.P_REELPICKER)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_PICKER, smashthepig.assembly.ComponentFactories.CF_PICKER).implement(smashthepig.assembly.Ports.P_PICKER)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_LUCKMETER, smashthepig.assembly.ComponentFactories.CF_LUCKMETER).implement(smashthepig.assembly.Ports.P_LUCKMETER)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_SOUNDPLAYER, smashthepig.assembly.ComponentFactories.CF_SOUNDPLAYER).implement(smashthepig.assembly.Ports.P_SOUNDPLAYER).end().component(null, null, smashthepig.assembly.Components.C_BACKGROUND, smashthepig.assembly.ComponentFactories.CF_BACKGROUND).implement(smashthepig.assembly.Ports.P_BACKGROUND).end().component(null, null, smashthepig.assembly.Components.C_TENSION, smashthepig.assembly.ComponentFactories.CF_TENSION).implement(smashthepig.assembly.Ports.P_TENSION)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT).end().component(null, null, smashthepig.assembly.Components.C_GAMECONTROLLER, smashthepig.assembly.ComponentFactories.CF_GAMECONTROLLER)["use"](smashthepig.assembly.Ports.P_BETPANEL)["use"](smashthepig.assembly.Ports.P_SLOTMODEL)["use"](smashthepig.assembly.Ports.P_GAMELAYOUT)["use"](smashthepig.assembly.Ports.P_REELS)["use"](smashthepig.assembly.Ports.P_ANIMATION)["use"](smashthepig.assembly.Ports.P_BANNER)["use"](smashthepig.assembly.Ports.P_WIN_ANIMATOR)["use"](smashthepig.assembly.Ports.P_PAYTABLE)["use"](smashthepig.assembly.Ports.P_REELPICKER)["use"](smashthepig.assembly.Ports.P_PICKER)["use"](smashthepig.assembly.Ports.P_LUCKMETER)["use"](smashthepig.assembly.Ports.P_INFOBAR)["use"](smashthepig.assembly.Ports.P_WINMETER)["use"](smashthepig.assembly.Ports.P_SOUNDPLAYER)["use"](smashthepig.assembly.Ports.P_TENSION)["use"](smashthepig.assembly.Ports.P_BACKGROUND).has().reference("animation", "reelbackground", smashthepig.assembly.Components.C_REELBACKGROUND).reference("animation", "reelforeground", smashthepig.assembly.Components.C_REELFOREGROUND).reference("animation", "wincappopup", smashthepig.assembly.Components.C_WINCAPPOPUP).end().end().end().end().end().run();
            });
        };
        smashThePigAssembly.SmashThePigAssembly.prototype.__class__ = smashThePigAssembly.SmashThePigAssembly;
        return {
            exports: smashThePigAssembly,
            activator: smashThePigAssembly.Activator
        };
    });
//# sourceURL=smashThePigAssembly.js