define("displayEngineUtils", [],
    function() {
        "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 displayEngineUtils == 'undefined') {
            var displayEngineUtils = {};
        };
        displayEngineUtils.Utils = function() {};
        displayEngineUtils.Utils.__name__ = ["displayEngineUtils", "Utils"];
        displayEngineUtils.Utils.floatToStringPrecision = function(n, prec) {
            n = _hcmn_.Math.round(n * _hcmn_.Math.pow(10, prec));
            var str = "" + n;
            var len = str.length;
            if (len <= prec) {
                while (len < prec) {
                    str = "0" + str;
                    len++;
                }
                return (prec == 0 ? "" : "0.") + str;
            } else return _hcmn_.HxOverrides.substr(str, 0, str.length - prec) + (prec == 0 ? "" : ".") + _hcmn_.HxOverrides.substr(str, str.length - prec, null);
        };
        displayEngineUtils.Utils.degToRad = function(degrees) {
            return degrees * (_hcmn_.Math.PI / 180);
        };
        displayEngineUtils.Utils.radToDeg = function(radians) {
            return radians * (180 / _hcmn_.Math.PI);
        };
        displayEngineUtils.Utils.toRGB = function(color) {
            return {
                r: color >> 16 & 255,
                g: color >> 8 & 255,
                b: color & 255
            };
        };
        displayEngineUtils.Utils.hue2rgb = function(p, q, t) {
            if (t < 0) t += 1;
            if (t > 1) t -= 1;
            if (t < 0.166666666666666657) return p + (q - p) * 6 * t;
            if (t < 0.5) return q;
            if (t < 0.66666666666666663) return p + (q - p) * (0.66666666666666663 - t) * 6;
            return p;
        };
        displayEngineUtils.Utils.hslToRgb = function(h, s, l) {
            var r;
            var g;
            var b;
            if (s == 0) r = g = b = l;
            else {
                var q;
                if (l < 0.5) q = l * (1 + s);
                else q = l + s - l * s;
                var p = 2 * l - q;
                r = displayEngineUtils.Utils.hue2rgb(p, q, h + 0.333333333333333315);
                g = displayEngineUtils.Utils.hue2rgb(p, q, h);
                b = displayEngineUtils.Utils.hue2rgb(p, q, h - 0.333333333333333315);
            }
            return {
                r: _hcmn_.Math.round(r * 255),
                g: _hcmn_.Math.round(g * 255),
                b: _hcmn_.Math.round(b * 255)
            };
        };
        displayEngineUtils.Utils.rgbToHsl = function(r, g, b) {
            r /= 255;
            g /= 255;
            b /= 255;
            var max = _hcmn_.Math.max(r, g);
            max = _hcmn_.Math.max(max, b);
            var min = _hcmn_.Math.min(r, g);
            min = _hcmn_.Math.min(min, b);
            var h = 0.0;
            var s = 0.0;
            var l = (max + min) / 2;
            if (max == min) h = s = 0;
            else {
                var d = max - min;
                if (l > 0.5) s = d / (2 - max - min);
                else s = d / (max + min);
                if (max == r) h = (g - b) / d;
                if (max == g) h = 2 + (b - r) / d;
                if (max == b) h = 4 + (r - g) / d;
                h *= 60;
                if (h < 0) h += 360;
            }
            return {
                h: h,
                s: s,
                l: l
            };
        };
        displayEngineUtils.Utils.toInt = function(rgb) {
            return _hcmn_.Math.round(rgb.r * 255) << 16 | _hcmn_.Math.round(rgb.g * 255) << 8 | _hcmn_.Math.round(rgb.b * 255);
        };
        displayEngineUtils.Utils.log = function(msg, color) {
            if (color == null) color = "black";
            var bgc = "White";
            switch (color) {
                case "success":
                    color = "Green";
                    bgc = "LimeGreen";
                    break;
                case "info":
                    color = "DodgerBlue";
                    bgc = "Turquoise";
                    break;
                case "error":
                    color = "Red";
                    bgc = "Black";
                    break;
                case "start":
                    color = "OliveDrab";
                    bgc = "PaleGreen";
                    break;
                case "warning":
                    color = "Tomato";
                    bgc = "Black";
                    break;
                case "end":
                    color = "Orchid";
                    bgc = "MediumVioletRed";
                    break;
                default:
            }
            console.log("%c" + msg, "color:" + color + ";font-weight:bold; background-color: " + bgc + ";");
        };
        displayEngineUtils.Utils.uuid = function() {
            var specialChars_0 = "8";
            var specialChars_1 = "9";
            var specialChars_2 = "A";
            var specialChars_3 = "B";
            var createRandomIdentifier = function(length, radix) {
                if (radix == null) radix = 61;
                var characters = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
                var id = [];
                if (radix > 61) radix = 61;
                else radix = radix;
                while (length-- > 0) id.push(characters[displayEngineUtils.Utils.randomInt(0, radix)]);
                return id.join("");
            };
            return createRandomIdentifier(8, 15) + "-" + createRandomIdentifier(4, 15) + "-4" + createRandomIdentifier(3, 15) + "-" + displayEngineUtils.Utils.randomInt(0, 3) + createRandomIdentifier(3, 15) + "-" + createRandomIdentifier(12, 15);
        };
        displayEngineUtils.Utils.randomInt = function(from, to) {
            return from + _hcmn_.Math.floor((to - from + 1) * _hcmn_.Math.random());
        };
        displayEngineUtils.Utils.extractFrame = function(spriteSheetImg, spriteSheetJSON, animationName, frameNo) {
            if (frameNo == null) frameNo = 0;
            var allFrames = _hcmn_.Reflect.getProperty(spriteSheetJSON, animationName).frames;
            var fullImgCanvas;
            var _this = window.document;
            fullImgCanvas = _this.createElement("canvas");
            fullImgCanvas.setAttribute("width", _hcmn_.Std.string(spriteSheetImg.width) + "px");
            fullImgCanvas.setAttribute("height", _hcmn_.Std.string(spriteSheetImg.height) + "px");
            var fImgCContext = fullImgCanvas.getContext("2d", null);
            fImgCContext.drawImage(spriteSheetImg, 0, 0, spriteSheetImg.width, spriteSheetImg.height);
            var finalCanvas;
            var _this1 = window.document;
            finalCanvas = _this1.createElement("canvas");
            var fCContext = finalCanvas.getContext("2d", null);
            var frameNoStr = frameNo + "";
            var frameRect = allFrames[frameNo].rect;
            finalCanvas.setAttribute("width", _hcmn_.Std.string(frameRect.w) + "px");
            finalCanvas.setAttribute("height", _hcmn_.Std.string(frameRect.h) + "px");
            var imgData = fImgCContext.getImageData(frameRect.x, frameRect.y, frameRect.w, frameRect.h);
            fCContext.putImageData(imgData, 0, 0);
            fullImgCanvas = null;
            return finalCanvas;
        };
        displayEngineUtils.Utils.clone = function(v) {
            var cloner = new displayEngineUtils.Cloner();
            var clone = cloner.clone(v);
            return clone;
        };
        displayEngineUtils.Utils.prototype.__class__ = displayEngineUtils.Utils;
        displayEngineUtils.Cloner = function() {
            this.stringMapCloner = new displayEngineUtils.MapCloner(this, _hcmn_.haxe_ds_StringMap);
            this.intMapCloner = new displayEngineUtils.MapCloner(this, _hcmn_.haxe_ds_IntMap);
            this.classHandles = new _hcmn_.haxe_ds_StringMap();
            this.classHandles.set("String", $bind(this, this.returnString));
            this.classHandles.set("Array", $bind(this, this.cloneArray));
            this.classHandles.set("haxe.ds.StringMap", ($_ = this.stringMapCloner, $bind($_, $_.clone)));
            this.classHandles.set("haxe.ds.IntMap", ($_ = this.intMapCloner, $bind($_, $_.clone)));
        };
        displayEngineUtils.Cloner.__name__ = ["displayEngineUtils", "Cloner"];
        displayEngineUtils.Cloner.prototype.cache = null;
        displayEngineUtils.Cloner.prototype.classHandles = null;
        displayEngineUtils.Cloner.prototype.stringMapCloner = null;
        displayEngineUtils.Cloner.prototype.intMapCloner = null;
        displayEngineUtils.Cloner.prototype.returnString = function(v) {
            return v;
        };
        displayEngineUtils.Cloner.prototype.clone = function(v) {
            this.cache = new haxe.ds.ObjectMap();
            var outcome = this._clone(v);
            this.cache = null;
            return outcome;
        };
        displayEngineUtils.Cloner.prototype._clone = function(v) {
            {
                var _g = _hcmn_.Type["typeof"](v);
                switch (_g[1]) {
                    case 0:
                        return null;
                    case 1:
                        return v;
                    case 2:
                        return v;
                    case 3:
                        return v;
                    case 4:
                        return v;
                    case 5:
                        return null;
                    case 6:
                        var c = _g[2];
                        if (!(this.cache.h.__keys__[v.__id__] != null)) this.cache.set(v, this.handleClass(c, v));
                        return this.cache.h[v.__id__];
                    case 7:
                        var e = _g[2];
                        return v;
                    case 8:
                        return null;
                }
            }
        };
        displayEngineUtils.Cloner.prototype.handleClass = function(c, inValue) {
            var handle;
            var key = _hcmn_.Type.getClassName(c);
            handle = this.classHandles.get(key);
            if (handle == null) handle = $bind(this, this.cloneClass);
            return handle(inValue);
        };
        displayEngineUtils.Cloner.prototype.cloneArray = function(inValue) {
            var array = inValue.slice();
            var _g1 = 0;
            var _g = array.length;
            while (_g1 < _g) {
                var i = _g1++;
                array[i] = this._clone(array[i]);
            }
            return array;
        };
        displayEngineUtils.Cloner.prototype.cloneClass = function(inValue) {
            var outValue = _hcmn_.Type.createEmptyInstance(inValue == null ? null : js.Boot.getClass(inValue));
            var fields = _hcmn_.Reflect.fields(inValue);
            var _g1 = 0;
            var _g = fields.length;
            while (_g1 < _g) {
                var i = _g1++;
                var field = fields[i];
                var property = _hcmn_.Reflect.getProperty(inValue, field);
                _hcmn_.Reflect.setField(outValue, field, this._clone(property));
            }
            return outValue;
        };
        displayEngineUtils.Cloner.prototype.__class__ = displayEngineUtils.Cloner;
        displayEngineUtils.MapCloner = function(cloner, type) {
            this.cloner = cloner;
            this.type = type;
            this.noArgs = [];
        };
        displayEngineUtils.MapCloner.__name__ = ["displayEngineUtils", "MapCloner"];
        displayEngineUtils.MapCloner.prototype.cloner = null;
        displayEngineUtils.MapCloner.prototype.type = null;
        displayEngineUtils.MapCloner.prototype.noArgs = null;
        displayEngineUtils.MapCloner.prototype.clone = function(inValue) {
            var inMap = inValue;
            var map = _hcmn_.Type.createInstance(this.type, this.noArgs);
            var $it0 = inMap.keys();
            while ($it0.hasNext()) {
                var key = $it0.next();
                map.set(key, this.cloner._clone(inMap.get(key)));
            }
            return map;
        };
        displayEngineUtils.MapCloner.prototype.__class__ = displayEngineUtils.MapCloner;
        displayEngineUtils.EaseX = function() {};
        displayEngineUtils.EaseX.__name__ = ["displayEngineUtils", "EaseX"];
        displayEngineUtils.EaseX.linear = function(t) {
            return t;
        };
        displayEngineUtils.EaseX.sineIn = function(t) {
            if (t == 0) return 0;
            else if (t == 1) return 1;
            else return 1 - _hcmn_.Math.cos(t * displayEngineUtils.EaseX.PI_H);
        };
        displayEngineUtils.EaseX.sineOut = function(t) {
            if (t == 0) return 0;
            else if (t == 1) return 1;
            else return _hcmn_.Math.sin(t * displayEngineUtils.EaseX.PI_H);
        };
        displayEngineUtils.EaseX.sineInOut = function(t) {
            if (t == 0) return 0;
            else if (t == 1) return 1;
            else return -0.5 * (_hcmn_.Math.cos(_hcmn_.Math.PI * t) - 1);
        };
        displayEngineUtils.EaseX.sineOutIn = function(t) {
            if (t == 0) return 0;
            else if (t == 1) return 1;
            else if (t < 0.5) return 0.5 * _hcmn_.Math.sin(t * 2 * displayEngineUtils.EaseX.PI_H);
            else return -0.5 * _hcmn_.Math.cos((t * 2 - 1) * displayEngineUtils.EaseX.PI_H) + 1;
        };
        displayEngineUtils.EaseX.quadIn = function(t) {
            return t * t;
        };
        displayEngineUtils.EaseX.quadOut = function(t) {
            return -t * (t - 2);
        };
        displayEngineUtils.EaseX.quadInOut = function(t) {
            if (t < 0.5) return 2 * t * t;
            else return -2 * ((t -= 1) * t) + 1;
        };
        displayEngineUtils.EaseX.quadOutIn = function(t) {
            if (t < 0.5) return -0.5 * (t = t * 2) * (t - 2);
            else return 0.5 * (t = t * 2 - 1) * t + 0.5;
        };
        displayEngineUtils.EaseX.cubicIn = function(t) {
            return t * t * t;
        };
        displayEngineUtils.EaseX.cubicOut = function(t) {
            return (t = t - 1) * t * t + 1;
        };
        displayEngineUtils.EaseX.cubicInOut = function(t) {
            if ((t *= 2) < 1) return 0.5 * t * t * t;
            else return 0.5 * ((t -= 2) * t * t + 2);
        };
        displayEngineUtils.EaseX.cubicOutIn = function(t) {
            return 0.5 * ((t = t * 2 - 1) * t * t + 1);
        };
        displayEngineUtils.EaseX.quartIn = function(t) {
            return t * t * t * t;
        };
        displayEngineUtils.EaseX.quartOut = function(t) {
            return 1 - (t = (t = t - 1) * t) * t;
        };
        displayEngineUtils.EaseX.quartInOut = function(t) {
            if ((t *= 2) < 1) return 0.5 * t * t * t * t;
            else return -0.5 * ((t -= 2) * t * t * t - 2);
        };
        displayEngineUtils.EaseX.quartOutIn = function(t) {
            if (t < 0.5) return -0.5 * (t = t * 2 - 1) * t * t * t + 0.5;
            else return 0.5 * (t = t * 2 - 1) * t * t * t + 0.5;
        };
        displayEngineUtils.EaseX.quintIn = function(t) {
            return t * t * t * t * t;
        };
        displayEngineUtils.EaseX.quintOut = function(t) {
            return (t = t - 1) * t * t * t * t + 1;
        };
        displayEngineUtils.EaseX.quintInOut = function(t) {
            if ((t *= 2) < 1) return 0.5 * t * t * t * t * t;
            else return 0.5 * (t -= 2) * t * t * t * t + 1;
        };
        displayEngineUtils.EaseX.quintOutIn = function(t) {
            return 0.5 * ((t = t * 2 - 1) * t * t * t * t + 1);
        };
        displayEngineUtils.EaseX.expoIn = function(t) {
            if (t == 0) return 0;
            else return _hcmn_.Math.pow(2, 10 * (t - 1));
        };
        displayEngineUtils.EaseX.expoOut = function(t) {
            if (t == 1) return 1;
            else return 1 - _hcmn_.Math.pow(2, -10 * t);
        };
        displayEngineUtils.EaseX.expoInOut = function(t) {
            if (t == 0) return 0;
            else if (t == 1) return 1;
            else if ((t *= 2) < 1) return 0.5 * _hcmn_.Math.pow(2, 10 * (t - 1));
            else return 0.5 * (2 - _hcmn_.Math.pow(2, -10 * --t));
        };
        displayEngineUtils.EaseX.expoOutIn = function(t) {
            if (t < 0.5) return 0.5 * (1 - _hcmn_.Math.pow(2, -20 * t));
            else if (t == 0.5) return 0.5;
            else return 0.5 * (_hcmn_.Math.pow(2, 20 * (t - 1)) + 1);
        };
        displayEngineUtils.EaseX.circIn = function(t) {
            return 1 - _hcmn_.Math.sqrt(1 - t * t);
        };
        displayEngineUtils.EaseX.circOut = function(t) {
            return _hcmn_.Math.sqrt(t * (2 - t));
        };
        displayEngineUtils.EaseX.circInOut = function(t) {
            if ((t *= 2) < 1) return -0.5 * (_hcmn_.Math.sqrt(1 - t * t) - 1);
            else return 0.5 * (_hcmn_.Math.sqrt(1 - (t -= 2) * t) + 1);
        };
        displayEngineUtils.EaseX.circOutIn = function(t) {
            if (t < 0.5) return 0.5 * _hcmn_.Math.sqrt(1 - (t = t * 2 - 1) * t);
            else return -0.5 * (_hcmn_.Math.sqrt(1 - (t = t * 2 - 1) * t) - 1 - 1);
        };
        displayEngineUtils.EaseX.bounceIn = function(t) {
            if ((t = 1 - t) < 0.363636363636363646) return 1 - 7.5625 * t * t;
            if (t < 0.727272727272727293) return 1 - (7.5625 * (t -= 0.545454545454545414) * t + 0.75);
            if (t < 0.909090909090909061) return 1 - (7.5625 * (t -= 0.818181818181818232) * t + 0.9375);
            return 1 - (7.5625 * (t -= 0.954545454545454586) * t + 0.984375);
        };
        displayEngineUtils.EaseX.bounceOut = function(t) {
            if (t < 0.363636363636363646) return 7.5625 * t * t;
            if (t < 0.727272727272727293) return 7.5625 * (t -= 0.545454545454545414) * t + 0.75;
            if (t < 0.909090909090909061) return 7.5625 * (t -= 0.818181818181818232) * t + 0.9375;
            return 7.5625 * (t -= 0.954545454545454586) * t + 0.984375;
        };
        displayEngineUtils.EaseX.bounceInOut = function(t) {
            if (t < 0.5) {
                if ((t = 1 - t * 2) < 0.363636363636363646) return (1 - 7.5625 * t * t) * 0.5;
                if (t < 0.727272727272727293) return (1 - (7.5625 * (t -= 0.545454545454545414) * t + 0.75)) * 0.5;
                if (t < 0.909090909090909061) return (1 - (7.5625 * (t -= 0.818181818181818232) * t + 0.9375)) * 0.5;
                return (1 - (7.5625 * (t -= 0.954545454545454586) * t + 0.984375)) * 0.5;
            } else {
                if ((t = t * 2 - 1) < 0.363636363636363646) return 7.5625 * t * t * 0.5 + 0.5;
                if (t < 0.727272727272727293) return (7.5625 * (t -= 0.545454545454545414) * t + 0.75) * 0.5 + 0.5;
                if (t < 0.909090909090909061) return (7.5625 * (t -= 0.818181818181818232) * t + 0.9375) * 0.5 + 0.5;
                return (7.5625 * (t -= 0.954545454545454586) * t + 0.984375) * 0.5 + 0.5;
            }
        };
        displayEngineUtils.EaseX.bounceOutIn = function(t) {
            if (t < 0.5) {
                if ((t = t * 2) < 0.363636363636363646) return 0.5 * (7.5625 * t * t);
                if (t < 0.727272727272727293) return 0.5 * (7.5625 * (t -= 0.545454545454545414) * t + 0.75);
                if (t < 0.909090909090909061) return 0.5 * (7.5625 * (t -= 0.818181818181818232) * t + 0.9375);
                return 0.5 * (7.5625 * (t -= 0.954545454545454586) * t + 0.984375);
            } else {
                if ((t = 1 - (t * 2 - 1)) < 0.363636363636363646) return 0.5 - 0.5 * (7.5625 * t * t) + 0.5;
                if (t < 0.727272727272727293) return 0.5 - 0.5 * (7.5625 * (t -= 0.545454545454545414) * t + 0.75) + 0.5;
                if (t < 0.909090909090909061) return 0.5 - 0.5 * (7.5625 * (t -= 0.818181818181818232) * t + 0.9375) + 0.5;
                return 0.5 - 0.5 * (7.5625 * (t -= 0.954545454545454586) * t + 0.984375) + 0.5;
            }
        };
        displayEngineUtils.EaseX.backIn = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            return t * t * ((displayEngineUtils.EaseX.overshoot + 1) * t - displayEngineUtils.EaseX.overshoot);
        };
        displayEngineUtils.EaseX.backOut = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            return (t = t - 1) * t * ((displayEngineUtils.EaseX.overshoot + 1) * t + displayEngineUtils.EaseX.overshoot) + 1;
        };
        displayEngineUtils.EaseX.backInOut = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            if ((t *= 2) < 1) return 0.5 * (t * t * ((displayEngineUtils.EaseX.overshoot * 1.525 + 1) * t - displayEngineUtils.EaseX.overshoot * 1.525));
            return 0.5 * ((t -= 2) * t * ((displayEngineUtils.EaseX.overshoot * 1.525 + 1) * t + displayEngineUtils.EaseX.overshoot * 1.525) + 2);
        };
        displayEngineUtils.EaseX.backOutIn = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            if (t < 0.5) return 0.5 * ((t = t * 2 - 1) * t * ((displayEngineUtils.EaseX.overshoot + 1) * t + displayEngineUtils.EaseX.overshoot) + 1);
            return 0.5 * (t = t * 2 - 1) * t * ((displayEngineUtils.EaseX.overshoot + 1) * t - displayEngineUtils.EaseX.overshoot) + 0.5;
        };
        displayEngineUtils.EaseX.elasticIn = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            var s = displayEngineUtils.EaseX.period / 4;
            return -(displayEngineUtils.EaseX.amplitude * _hcmn_.Math.pow(2, 10 * (t -= 1)) * _hcmn_.Math.sin((t * 0.001 - s) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period));
        };
        displayEngineUtils.EaseX.elasticOut = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            var s = displayEngineUtils.EaseX.period / 4;
            return _hcmn_.Math.pow(2, -10 * t) * _hcmn_.Math.sin((t * 0.001 - s) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period) + 1;
        };
        displayEngineUtils.EaseX.elasticInOut = function(t) {
            if (t == 0) return 0;
            if (t == 1) return 1;
            var s = displayEngineUtils.EaseX.period / 4;
            if ((t *= 2) < 1) return -0.5 * (displayEngineUtils.EaseX.amplitude * _hcmn_.Math.pow(2, 10 * (t -= 1)) * _hcmn_.Math.sin((t * 0.001 - s) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period));
            else return displayEngineUtils.EaseX.amplitude * _hcmn_.Math.pow(2, -10 * (t -= 1)) * _hcmn_.Math.sin((t * 0.001 - s) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period) * 0.5 + 1;
        };
        displayEngineUtils.EaseX.elasticOutIn = function(t) {
            if (t < 0.5) {
                if ((t *= 2) == 0) return 0;
                var s = displayEngineUtils.EaseX.period / 4;
                return displayEngineUtils.EaseX.amplitude / 2 * _hcmn_.Math.pow(2, -10 * t) * _hcmn_.Math.sin((t * 0.001 - s) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period) + 0.5;
            } else {
                if (t == 0.5) return 0.5;
                if (t == 1) return 1;
                t = t * 2 - 1;
                var s1 = displayEngineUtils.EaseX.period / 4;
                return -(displayEngineUtils.EaseX.amplitude / 2 * _hcmn_.Math.pow(2, 10 * (t -= 1)) * _hcmn_.Math.sin((t * 0.001 - s1) * (2 * _hcmn_.Math.PI) / displayEngineUtils.EaseX.period)) + 0.5;
            }
        };
        displayEngineUtils.EaseX.prototype.__class__ = displayEngineUtils.EaseX;
        displayEngineUtils.EventX = {
            __ename__: ["displayEngineUtils", "EventX"],
            __constructs__: ["PLAY", "DELAY", "HEAD", "UPDATE", "FOOT", "INTERVAL", "REPEAT", "REST", "FINISH", "STOP"]
        };
        displayEngineUtils.EventX.REPEAT = ["REPEAT", 6];
        displayEngineUtils.EventX.REPEAT.toString = $estr;
        displayEngineUtils.EventX.REPEAT.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.STOP = ["STOP", 9];
        displayEngineUtils.EventX.STOP.toString = $estr;
        displayEngineUtils.EventX.STOP.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.INTERVAL = ["INTERVAL", 5];
        displayEngineUtils.EventX.INTERVAL.toString = $estr;
        displayEngineUtils.EventX.INTERVAL.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.REST = ["REST", 7];
        displayEngineUtils.EventX.REST.toString = $estr;
        displayEngineUtils.EventX.REST.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.FOOT = ["FOOT", 4];
        displayEngineUtils.EventX.FOOT.toString = $estr;
        displayEngineUtils.EventX.FOOT.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.HEAD = ["HEAD", 2];
        displayEngineUtils.EventX.HEAD.toString = $estr;
        displayEngineUtils.EventX.HEAD.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.UPDATE = ["UPDATE", 3];
        displayEngineUtils.EventX.UPDATE.toString = $estr;
        displayEngineUtils.EventX.UPDATE.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.PLAY = ["PLAY", 0];
        displayEngineUtils.EventX.PLAY.toString = $estr;
        displayEngineUtils.EventX.PLAY.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.FINISH = ["FINISH", 8];
        displayEngineUtils.EventX.FINISH.toString = $estr;
        displayEngineUtils.EventX.FINISH.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.EventX.DELAY = ["DELAY", 1];
        displayEngineUtils.EventX.DELAY.toString = $estr;
        displayEngineUtils.EventX.DELAY.__enum__ = displayEngineUtils.EventX;
        displayEngineUtils.CommandX = function(command, posInfos) {
            this.command = command;
            this.definedPosInfos = posInfos;
        };
        displayEngineUtils.CommandX.__name__ = ["displayEngineUtils", "CommandX"];
        displayEngineUtils.CommandX.prototype.command = null;
        displayEngineUtils.CommandX.prototype.definedPosInfos = null;
        displayEngineUtils.CommandX.prototype.__class__ = displayEngineUtils.CommandX;
        displayEngineUtils.BoolRuleX = function() {};
        displayEngineUtils.BoolRuleX.__name__ = ["displayEngineUtils", "BoolRuleX"];
        displayEngineUtils.BoolRuleX.calc = function(_from, _to, t1, t2, tween) {
            return 0 < (_from ? 1 : 0) * t2 + (_to ? 1 : 0) * t1;
        };
        displayEngineUtils.BoolRuleX.defaultFrom = function(value, _to, tween) {
            return value;
        };
        displayEngineUtils.BoolRuleX.prototype.__class__ = displayEngineUtils.BoolRuleX;
        displayEngineUtils.ArrayRuleX = function() {};
        displayEngineUtils.ArrayRuleX.__name__ = ["displayEngineUtils", "ArrayRuleX"];
        displayEngineUtils.ArrayRuleX.calc = function(_from, _to, t1, t2, tween) {
            var fi = $iterator(_from)();
            var arr = [];
            var $it0 = $iterator(_to)();
            while ($it0.hasNext()) {
                var t = $it0.next();
                var f = fi.next();
                arr.push(displayEngineUtils.ArrayRuleX._calc(f, t, t1, t2, tween));
            }
            return arr;
        };
        displayEngineUtils.ArrayRuleX._calc = function(_from, _to, t1, t2, tween) {
            if (typeof(_to) == "number") return _from * t2 + _to * t1;
            else {
                var result = null;
                var ok = false;
                var $it0 = $iterator(displayEngineUtils.TweenX.get_rules())();
                while ($it0.hasNext()) {
                    var r = $it0.next();
                    if (_hcmn_.js_Boot.__instanceof(_to, r.inputClass)) {
                        ok = true;
                        result = r.calc(_from, _to, t1, t2, tween);
                        break;
                    }
                }
                if (!ok) {
                    var eh = tween;
                    throw new js._Boot.HaxeError(eh.error("The tween rule for " + _hcmn_.Type.getClassName(_hcmn_.Type.getClass(_to)) + " is not defined"));
                }
                return result;
            }
        };
        displayEngineUtils.ArrayRuleX.defaultFrom = function(value, _to, tween) {
            var eh = tween;
            if (value != null) {
                var arr = [];
                var $it0 = $iterator(_to)();
                while ($it0.hasNext()) {
                    var t = $it0.next();
                    arr.push(null);
                }
            } else if (_hcmn_.Lambda.count(value) != _hcmn_.Lambda.count(_to)) throw new js._Boot.HaxeError(eh.error("The array length must be same with start."));
            var result = [];
            var it = $iterator(_to)();
            var $it1 = $iterator(value)();
            while ($it1.hasNext()) {
                var v = $it1.next();
                var t1 = it.next();
                result.push(displayEngineUtils.ArrayRuleX._defaultFrom(v, t1, tween));
            }
            return result;
        };
        displayEngineUtils.ArrayRuleX._defaultFrom = function(value, _to, tween) {
            if (typeof(_to) == "number") return value;
            var $it0 = $iterator(displayEngineUtils.TweenX.get_rules())();
            while ($it0.hasNext()) {
                var r = $it0.next();
                if (_hcmn_.js_Boot.__instanceof(_to, r.inputClass)) return r.defaultFrom(value, _to, tween);
            }
            var eh = tween;
            throw new js._Boot.HaxeError(eh.error("The tween rule for " + _hcmn_.Type.getClassName(_hcmn_.Type.getClass(_to)) + " is not defined"));
            return null;
        };
        displayEngineUtils.ArrayRuleX.prototype.__class__ = displayEngineUtils.ArrayRuleX;
        displayEngineUtils.TimelineX = function(data, intervals) {
            this.data = _hcmn_.Lambda.array(data);
            if (intervals == null) {
                var arr = [];
                var _g1 = 0;
                var _g = this.data.length;
                while (_g1 < _g) {
                    var i = _g1++;
                    arr.push(i);
                }
                this.timeline = arr;
            } else {
                var arr1 = [];
                var n = 0;
                var $it0 = $iterator(intervals)();
                while ($it0.hasNext()) {
                    var i1 = $it0.next();
                    arr1.push(n += i1);
                }
                this.timeline = arr1;
            }
            if (this.timeline.length != this.data.length) throw new js._Boot.HaxeError("times length must be same with data length.");
            this.length = this.timeline[this.timeline.length - 1] + 1;
        };
        displayEngineUtils.TimelineX.__name__ = ["displayEngineUtils", "TimelineX"];
        displayEngineUtils.TimelineX.prototype.length = null;
        displayEngineUtils.TimelineX.prototype.data = null;
        displayEngineUtils.TimelineX.prototype.timeline = null;
        displayEngineUtils.TimelineX.calc = function(_from, _to, t1, t2, tween) {
            var t = t1 * _to.length;
            var ts = _to.timeline;
            var l = ts.length;
            var min = 0;
            var max = l;
            var n = max >> 1;
            while (max - min > 1) {
                var val = ts[n];
                if (t < val) max = n;
                else min = n;
                n = min + (max - min >> 1);
            }
            return _to.data[min];
        };
        displayEngineUtils.TimelineX.defaultFrom = function(value, _to, tween) {
            return null;
        };
        displayEngineUtils.TimelineX.prototype.__class__ = displayEngineUtils.TimelineX;
        displayEngineUtils.RgbX = function(red, green, blue) {
            this.r = red;
            this.g = green;
            this.b = blue;
        };
        displayEngineUtils.RgbX.__name__ = ["displayEngineUtils", "RgbX"];
        displayEngineUtils.RgbX.prototype.r = null;
        displayEngineUtils.RgbX.prototype.g = null;
        displayEngineUtils.RgbX.prototype.b = null;
        displayEngineUtils.RgbX.calc = function(_from, _to, t1, t2, tween) {
            var r = (_from.r * t2 + _to.r * t1) * 255 | 0;
            if (r < 0) r = 0;
            else if (r > 255) r = 255;
            var g = (_from.g * t2 + _to.g * t1) * 255 | 0;
            if (g < 0) g = 0;
            else if (g > 255) g = 255;
            var b = (_from.b * t2 + _to.b * t1) * 255 | 0;
            if (b < 0) b = 0;
            else if (b > 255) b = 255;
            return r << 16 | g << 8 | b;
        };
        displayEngineUtils.RgbX.defaultFrom = function(value, _to, tween) {
            return displayEngineUtils.RgbX.of(value);
        };
        displayEngineUtils.RgbX.of = function(color) {
            return new displayEngineUtils.RgbX((color >> 16 & 255) / 255, (color >> 8 & 255) / 255, (color & 255) / 255);
        };
        displayEngineUtils.RgbX.prototype.__class__ = displayEngineUtils.RgbX;
        displayEngineUtils.HsvX = function(hue, saturation, value) {
            this.h = hue;
            this.s = saturation;
            this.v = value;
        };
        displayEngineUtils.HsvX.__name__ = ["displayEngineUtils", "HsvX"];
        displayEngineUtils.HsvX.prototype.h = null;
        displayEngineUtils.HsvX.prototype.s = null;
        displayEngineUtils.HsvX.prototype.v = null;
        displayEngineUtils.HsvX.calc = function(_from, _to, t1, t2, tween) {
            var h = _from.h * t2 + _to.h * t1;
            var s = _from.s * t2 + _to.s * t1;
            var v = _from.v * t2 + _to.v * t1;
            h = (h - _hcmn_.Math.floor(h)) * 6;
            var hi = _hcmn_.Math.floor(h);
            if (s > 1) s = 1;
            if (s < 0) s = 0;
            if (v > 1) v = 1;
            if (v < 0) v = 0;
            var m = v * (1 - s);
            var f = h - hi;
            var r = .0;
            var g = .0;
            var b = .0;
            switch (hi) {
                case 0:
                    r = v;
                    g = v * (1 - s * (1 - f));
                    b = m;
                    break;
                case 1:
                    r = v * (1 - s * f);
                    g = v;
                    b = m;
                    break;
                case 2:
                    r = m;
                    g = v;
                    b = v * (1 - s * (1 - f));
                    break;
                case 3:
                    r = m;
                    g = v * (1 - s * f);
                    b = v;
                    break;
                case 4:
                    r = v * (1 - s * (1 - f));
                    g = m;
                    b = v;
                    break;
                case 5:
                    r = v;
                    g = m;
                    b = v * (1 - s * f);
                    break;
            }
            return (r * 255 | 0) << 16 | (g * 255 | 0) << 8 | (b * 255 | 0);
        };
        displayEngineUtils.HsvX.defaultFrom = function(value, _to, tween) {
            return displayEngineUtils.HsvX.of(value);
        };
        displayEngineUtils.HsvX.of = function(color, hueIndex) {
            if (hueIndex == null) hueIndex = 0;
            var r = (color >> 16 & 255) / 255;
            var g = (color >> 8 & 255) / 255;
            var b = (color & 255) / 255;
            var max;
            var min;
            var diff;
            var h;
            if (r < g) {
                if (g < b) {
                    max = b;
                    min = r;
                    h = (4 + (r - g) / (diff = max - min)) / 6;
                } else {
                    max = g;
                    if (r < b) min = r;
                    else min = b;
                    h = (2 + (b - r) / (diff = max - min)) / 6;
                }
            } else if (r < b) {
                max = b;
                min = g;
                h = (4 + (r - g) / (diff = max - min)) / 6;
            } else {
                max = r;
                if (g < b) min = g;
                else min = b;
                h = (g - b) / (diff = max - min) / 6;
            }
            if (h < 0) h += 1;
            var s = diff / max;
            return new displayEngineUtils.HsvX(h + hueIndex, s, max);
        };
        displayEngineUtils.HsvX.prototype.__class__ = displayEngineUtils.HsvX;
        displayEngineUtils.ArgbX = function(alpha, red, green, blue) {
            this.a = alpha;
            this.r = red;
            this.g = green;
            this.b = blue;
        };
        displayEngineUtils.ArgbX.__name__ = ["displayEngineUtils", "ArgbX"];
        displayEngineUtils.ArgbX.prototype.a = null;
        displayEngineUtils.ArgbX.prototype.r = null;
        displayEngineUtils.ArgbX.prototype.g = null;
        displayEngineUtils.ArgbX.prototype.b = null;
        displayEngineUtils.ArgbX.calc = function(_from, _to, t1, t2, tween) {
            var a = (_from.a * t2 + _to.a * t1) * 255 | 0;
            if (a < 0) a = 0;
            else if (a > 255) a = 255;
            var r = (_from.r * t2 + _to.r * t1) * 255 | 0;
            if (r < 0) r = 0;
            else if (r > 255) r = 255;
            var g = (_from.g * t2 + _to.g * t1) * 255 | 0;
            if (g < 0) g = 0;
            else if (g > 255) g = 255;
            var b = (_from.b * t2 + _to.b * t1) * 255 | 0;
            if (b < 0) b = 0;
            else if (b > 255) b = 255;
            return a << 24 | r << 16 | g << 8 | b;
        };
        displayEngineUtils.ArgbX.defaultFrom = function(value, _to, tween) {
            return displayEngineUtils.ArgbX.of(value);
        };
        displayEngineUtils.ArgbX.of = function(color) {
            return new displayEngineUtils.ArgbX((color >>> 24 & 255) / 255, (color >> 16 & 255) / 255, (color >> 8 & 255) / 255, (color & 255) / 255);
        };
        displayEngineUtils.ArgbX.prototype.__class__ = displayEngineUtils.ArgbX;
        displayEngineUtils.AhsvX = function(alpha, hue, saturation, value) {
            this.a = alpha;
            this.h = hue;
            this.s = saturation;
            this.v = value;
        };
        displayEngineUtils.AhsvX.__name__ = ["displayEngineUtils", "AhsvX"];
        displayEngineUtils.AhsvX.prototype.a = null;
        displayEngineUtils.AhsvX.prototype.h = null;
        displayEngineUtils.AhsvX.prototype.s = null;
        displayEngineUtils.AhsvX.prototype.v = null;
        displayEngineUtils.AhsvX.calc = function(_from, _to, t1, t2, tween) {
            var a = _from.a * t2 + _to.a * t1;
            if (a > 1) a = 1;
            if (a < 0) a = 0;
            var h = _from.h * t2 + _to.h * t1;
            var s = _from.s * t2 + _to.s * t1;
            var v = _from.v * t2 + _to.v * t1;
            h = (h - _hcmn_.Math.floor(h)) * 6;
            var hi = _hcmn_.Math.floor(h);
            if (s > 1) s = 1;
            if (s < 0) s = 0;
            if (v > 1) v = 1;
            if (v < 0) v = 0;
            var m = v * (1 - s);
            var f = h - hi;
            var r = .0;
            var g = .0;
            var b = .0;
            switch (hi) {
                case 0:
                    r = v;
                    g = v * (1 - s * (1 - f));
                    b = m;
                    break;
                case 1:
                    r = v * (1 - s * f);
                    g = v;
                    b = m;
                    break;
                case 2:
                    r = m;
                    g = v;
                    b = v * (1 - s * (1 - f));
                    break;
                case 3:
                    r = m;
                    g = v * (1 - s * f);
                    b = v;
                    break;
                case 4:
                    r = v * (1 - s * (1 - f));
                    g = m;
                    b = v;
                    break;
                case 5:
                    r = v;
                    g = m;
                    b = v * (1 - s * f);
                    break;
            }
            return (a * 255 | 0) << 24 | (r * 255 | 0) << 16 | (g * 255 | 0) << 8 | (b * 255 | 0);
        };
        displayEngineUtils.AhsvX.defaultFrom = function(value, _to, tween) {
            return displayEngineUtils.AhsvX.of(value);
        };
        displayEngineUtils.AhsvX.of = function(color, hueIndex) {
            if (hueIndex == null) hueIndex = 0;
            var a = (color >>> 24 & 255) / 255;
            var r = (color >> 16 & 255) / 255;
            var g = (color >> 8 & 255) / 255;
            var b = (color & 255) / 255;
            var max;
            var min;
            var diff;
            var h;
            if (r < g) {
                if (g < b) {
                    max = b;
                    min = r;
                    h = (4 + (r - g) / (diff = max - min)) / 6;
                } else {
                    max = g;
                    if (r < b) min = r;
                    else min = b;
                    h = (2 + (b - r) / (diff = max - min)) / 6;
                }
            } else if (r < b) {
                max = b;
                min = g;
                h = (4 + (r - g) / (diff = max - min)) / 6;
            } else {
                max = r;
                if (g < b) min = g;
                else min = b;
                h = (g - b) / (diff = max - min) / 6;
            }
            if (h < 0) h += 1;
            var s = diff / max;
            return new displayEngineUtils.AhsvX(a, h + hueIndex, s, max);
        };
        displayEngineUtils.AhsvX.prototype.__class__ = displayEngineUtils.AhsvX;
        displayEngineUtils.QuakeX = function(value, scale, ease) {
            this.value = value;
            this.scale = scale;
            if (ease == null) this.ease = $bind(this, this.none);
            else this.ease = ease;
        };
        displayEngineUtils.QuakeX.__name__ = ["displayEngineUtils", "QuakeX"];
        displayEngineUtils.QuakeX.prototype.ease = null;
        displayEngineUtils.QuakeX.prototype.value = null;
        displayEngineUtils.QuakeX.prototype.scale = null;
        displayEngineUtils.QuakeX.prototype.none = function(t) {
            if (t <= 0) return 0;
            else return 1;
        };
        displayEngineUtils.QuakeX.calc = function(_from, _to, t1, t2, tween) {
            var p;
            if (t1 < 0.5) p = _from.ease(t1 * 2);
            else p = _to.ease(t2 * 2);
            return _from.value * t2 + _to.value * t1 + p * (_hcmn_.Math.random() * 2 - 1) * (_from.scale * t2 + _to.scale * t1);
        };
        displayEngineUtils.QuakeX.defaultFrom = function(value, _to, tween) {
            return new displayEngineUtils.QuakeX(value, _to.scale, _to.ease);
        };
        displayEngineUtils.QuakeX.prototype.__class__ = displayEngineUtils.QuakeX;
        if (typeof haxe == 'undefined') {
            var haxe = {};
        };

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

            get: function(k) {
                return {
                    arguments: ["*"],
                    returns: "null"
                };
            },
            set: function(k, v) {
                return {
                    arguments: ["*", "*"],
                    returns: "void"
                };
            },
            keys: function() {
                return {
                    arguments: [],
                    returns: "null"
                };
            }
        };
        if (!haxe.ds) {
            haxe.ds = {};
        };
        haxe.ds.ObjectMap = function() {
            this.h = {};
            this.h.__keys__ = {};
        };
        haxe.ds.ObjectMap.__interfaces__ = [haxe.IMap];
        haxe.ds.ObjectMap.__name__ = ["haxe", "ds", "ObjectMap"];
        haxe.ds.ObjectMap.prototype.h = null;
        haxe.ds.ObjectMap.prototype.set = function(key, value) {
            var id = key.__id__ || (key.__id__ = ++haxe.ds.ObjectMap.count);
            this.h[id] = value;
            this.h.__keys__[id] = key;
        };
        haxe.ds.ObjectMap.prototype.get = function(key) {
            return this.h[key.__id__];
        };
        haxe.ds.ObjectMap.prototype.keys = function() {
            var a = [];
            for (var key in this.h.__keys__) {
                if (this.h.hasOwnProperty(key)) a.push(this.h.__keys__[key]);
            }
            return _hcmn_.HxOverrides.iter(a);
        };
        haxe.ds.ObjectMap.prototype.__class__ = haxe.ds.ObjectMap;
        displayEngineUtils.UpdateModeX = {
            __ename__: ["displayEngineUtils", "UpdateModeX"],
            __constructs__: ["MANUAL", "TIME"]
        };
        displayEngineUtils.UpdateModeX.TIME = function(frameRate) {
            var $x = ["TIME", 1, frameRate];
            $x.__enum__ = displayEngineUtils.UpdateModeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.UpdateModeX.MANUAL = ["MANUAL", 0];
        displayEngineUtils.UpdateModeX.MANUAL.toString = $estr;
        displayEngineUtils.UpdateModeX.MANUAL.__enum__ = displayEngineUtils.UpdateModeX;
        displayEngineUtils.TweenX = function(type, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            this.timeScale = 1;
            this._skip = null;
            this._currentTime = 0;
            displayEngineUtils.CommandX.call(this, displayEngineUtils.CommandTypeX.TWEEN(this), posInfos);
            this._type = type;
            this._currentTime = 0;
            switch (type[1]) {
                case 0:
                    var g = type[2];
                    this._easeIsDefault = false;
                    if (ease == null) this._ease = displayEngineUtils.EaseX.linear;
                    else this._ease = ease;
                    break;
                default:
                    if (this._easeIsDefault = ease == null) this._ease = displayEngineUtils.TweenX.defaultEase;
                    else this._ease = ease;
            }
            if (this._timeIsDefault = time == null) this._time = displayEngineUtils.TweenX.defaultTime;
            else this._time = time;
            if (this._delayIsDefault = delay == null) this._delay = displayEngineUtils.TweenX.defaultDelay;
            else this._delay = delay;
            if (this._intervalIsDefault = interval == null) this._interval = displayEngineUtils.TweenX.defaultInterval;
            else this._interval = interval;
            if (this._repeatIsDefault = repeat == null) this._repeat = displayEngineUtils.TweenX.defaultRepeat;
            else this._repeat = repeat;
            if (this._yoyoIsDefault = yoyo == null) this._yoyo = displayEngineUtils.TweenX.defaultYoyo;
            else this._yoyo = yoyo;
            if (this._zigzagIsDefault = zigzag == null) this._zigzag = displayEngineUtils.TweenX.defaultZigZag;
            else this._zigzag = zigzag;
            if (this._autoPlayIsDefault = autoPlay == null) this._autoPlay = displayEngineUtils.TweenX.defaultAutoPlay;
            else this._autoPlay = autoPlay;
            this._rest = 0;
            this._eventListeners = [];
            this.id = displayEngineUtils.TweenX.idCounter++;
            displayEngineUtils.TweenX._addedTweens.push(this);
            if (!displayEngineUtils.TweenX.managerInited) displayEngineUtils.TweenX.initManager();
        };
        displayEngineUtils.TweenX.__name__ = ["displayEngineUtils", "TweenX"];
        displayEngineUtils.TweenX.__super__ = displayEngineUtils.CommandX;
        for (var k in displayEngineUtils.CommandX.prototype) displayEngineUtils.TweenX.prototype[k] = displayEngineUtils.CommandX.prototype[k];
        displayEngineUtils.TweenX.prototype.playing = null;
        displayEngineUtils.TweenX.prototype.backward = null;
        displayEngineUtils.TweenX.prototype._currentTime = null;
        displayEngineUtils.TweenX.prototype._singleTime = null;
        displayEngineUtils.TweenX.prototype._skip = null;
        displayEngineUtils.TweenX.prototype._type = null;
        displayEngineUtils.TweenX.prototype._inited = null;
        displayEngineUtils.TweenX.prototype._totalTime = null;
        displayEngineUtils.TweenX.prototype._dead = null;
        displayEngineUtils.TweenX.prototype._parent = null;
        displayEngineUtils.TweenX.prototype._fastMode = null;
        displayEngineUtils.TweenX.prototype._toKeys = null;
        displayEngineUtils.TweenX.prototype.currentTime = null;
        displayEngineUtils.TweenX.prototype.singleTime = null;
        displayEngineUtils.TweenX.prototype.totalTime = null;
        displayEngineUtils.TweenX.prototype.timeScale = null;
        displayEngineUtils.TweenX.prototype.get_currentTime = function() {
            var t = this.get_totalTime();
            var p;
            if (this.backward) p = t - this._currentTime;
            else p = this._currentTime;
            if (p < 0) p = 0;
            if (p > t) p = t;
            return p;
        };
        displayEngineUtils.TweenX.prototype.get_singleTime = function() {
            return this._time + this._interval;
        };
        displayEngineUtils.TweenX.prototype.get_totalTime = function() {
            return this._delay + this.get_singleTime() * this._repeat - this._interval + this._rest;
        };
        displayEngineUtils.TweenX.prototype.set_timeScale = function(value) {
            if (this._parent != null) throw new js._Boot.HaxeError(this.error("Can't change timeScale of serialized object directly"));
            else return this.timeScale = value;
        };
        displayEngineUtils.TweenX.prototype._inverted = null;
        displayEngineUtils.TweenX.prototype._odd = null;
        displayEngineUtils.TweenX.prototype._time = null;
        displayEngineUtils.TweenX.prototype._ease = null;
        displayEngineUtils.TweenX.prototype._interval = null;
        displayEngineUtils.TweenX.prototype._repeat = null;
        displayEngineUtils.TweenX.prototype._zigzag = null;
        displayEngineUtils.TweenX.prototype._yoyo = null;
        displayEngineUtils.TweenX.prototype._delay = null;
        displayEngineUtils.TweenX.prototype._autoPlay = null;
        displayEngineUtils.TweenX.prototype._rest = null;
        displayEngineUtils.TweenX.prototype._timeIsDefault = null;
        displayEngineUtils.TweenX.prototype._easeIsDefault = null;
        displayEngineUtils.TweenX.prototype._intervalIsDefault = null;
        displayEngineUtils.TweenX.prototype._repeatIsDefault = null;
        displayEngineUtils.TweenX.prototype._zigzagIsDefault = null;
        displayEngineUtils.TweenX.prototype._yoyoIsDefault = null;
        displayEngineUtils.TweenX.prototype._delayIsDefault = null;
        displayEngineUtils.TweenX.prototype._autoPlayIsDefault = null;
        displayEngineUtils.TweenX.prototype._onPlay = null;
        displayEngineUtils.TweenX.prototype._onStop = null;
        displayEngineUtils.TweenX.prototype._onDelay = null;
        displayEngineUtils.TweenX.prototype._onInterval = null;
        displayEngineUtils.TweenX.prototype._onRepeat = null;
        displayEngineUtils.TweenX.prototype._onRest = null;
        displayEngineUtils.TweenX.prototype._onHead = null;
        displayEngineUtils.TweenX.prototype._onUpdate = null;
        displayEngineUtils.TweenX.prototype._onFoot = null;
        displayEngineUtils.TweenX.prototype._onFinish = null;
        displayEngineUtils.TweenX.prototype._eventListeners = null;
        displayEngineUtils.TweenX.prototype.id = null;
        displayEngineUtils.TweenX.prototype.error = function(msg) {
            var p = this.definedPosInfos;
            return msg + "(Tween_" + this.id + " was generated at " + p.className + "/" + p.methodName + "() [" + p.fileName + ":" + p.lineNumber + "])";
        };
        displayEngineUtils.TweenX.prototype.play = function() {
            if (this._parent != null) throw new js._Boot.HaxeError(this.error("Can't play serialized object directly"));
            if (this.playing) return this;
            if (!this._inited) this._init();
            this.playing = true;
            displayEngineUtils.TweenX._tweens.push(this);
            this.dispatch(displayEngineUtils.TweenX._PLAY);
            if (this._onPlay != null) this._onPlay();
            this.update(displayEngineUtils.TweenX._MIN);
            return this;
        };
        displayEngineUtils.TweenX.prototype.stop = function() {
            if (this._parent != null) throw new js._Boot.HaxeError(this.error("Can't stop serialized object directly"));
            this._stop();
            return this;
        };
        displayEngineUtils.TweenX.prototype._stop = function() {
            if (!this.playing) return;
            this.playing = false;
            this.dispatch(displayEngineUtils.TweenX._STOP);
            if (this._onStop != null) this._onStop();
        };
        displayEngineUtils.TweenX.prototype.update = function(time) {
            if (this._parent != null) throw new js._Boot.HaxeError(this.error("Can't stop serialized object directly"));
            this._update(time * this.timeScale * displayEngineUtils.TweenX.topLevelTimeScale);
            return this;
        };
        displayEngineUtils.TweenX.prototype["goto"] = function(time, andPlay) {
            if (andPlay == null) andPlay = false;
            if (time == null) time = 0;
            if (this._parent != null) throw new js._Boot.HaxeError(this.error("Can't move serialized object directly"));
            if (!this._inited) this._init();
            var t = time;
            if (t < 0) t = 0;
            else if (t > this._totalTime) t = this._totalTime;
            this._update(t - this.get_currentTime());
            if (andPlay) this.play();
            if (time == 0) this._time = 0.000001;
            return this;
        };
        displayEngineUtils.TweenX.prototype._invert = function() {
            this._currentTime = this._totalTime - this._currentTime;
            if (this._repeat % 2 == 0) this._odd = !this._odd;
            this._inverted = !this._inverted;
            var d = this._delay;
            this._delay = this._rest;
            this._rest = d;
        };
        displayEngineUtils.TweenX.prototype._init = function() {
            if (this._inited) return;
            this._inited = true;
            if (displayEngineUtils.TweenX._groupDefaults) {
                if (this._easeIsDefault) this._ease = displayEngineUtils.TweenX.defaultEase;
                if (this._timeIsDefault) this._time = displayEngineUtils.TweenX.defaultTime;
                if (this._delayIsDefault) this._delay = displayEngineUtils.TweenX.defaultDelay;
                if (this._intervalIsDefault) this._interval = displayEngineUtils.TweenX.defaultInterval;
                if (this._repeatIsDefault) this._repeat = displayEngineUtils.TweenX.defaultRepeat;
                if (this._yoyoIsDefault) this._yoyo = displayEngineUtils.TweenX.defaultYoyo;
                if (this._zigzagIsDefault) this._zigzag = displayEngineUtils.TweenX.defaultZigZag;
                if (this._autoPlayIsDefault) this._autoPlay = displayEngineUtils.TweenX.defaultAutoPlay;
            }
            if (this._repeat == 0) this._repeat = 2147483646;
            if (this._time < displayEngineUtils.TweenX._MIN) this._time = displayEngineUtils.TweenX._MIN;
            var ot = displayEngineUtils.TweenX.getTime();
            this._fastMode = true; {
                var _g = this._type;
                switch (_g[1]) {
                    case 2:
                        var _to = _g[4];
                        var _from = _g[3];
                        var target = _g[2];
                        console.log("FROM_TO");
                        this._initFromTo(target, _from, _to);
                        this._toKeys = displayEngineUtils.TweenX.fields(_to);
                        break;
                    case 1:
                        var toArr = _g[4];
                        var fromArr = _g[3];
                        var targets = _g[2];
                        console.log("ARRAY");
                        var i = 0;
                        var $it0 = $iterator(targets)();
                        while ($it0.hasNext()) {
                            var target1 = $it0.next();
                            var _from1 = fromArr[i];
                            var _to1 = toArr[i];
                            this._initFromTo(target1, _from1, _to1);
                            if (i == 0) this._toKeys = displayEngineUtils.TweenX.fields(_to1);
                            i++;
                        }
                        break;
                    case 0:
                        var g = _g[2];
                        this.initGroup(g);
                        break;
                    default:
                }
            }
            this._singleTime = this.get_singleTime();
            this._totalTime = this.get_totalTime();
            if (this._autoPlay) this.play();
        };
        displayEngineUtils.TweenX.prototype._initFromTo = function(target, _from, _to) {
            throw new js._Boot.HaxeError(this.error("must be standard tween."));
        };
        displayEngineUtils.TweenX.prototype._update = function(spent) {
            if (!this._inited) this._init();
            if (spent == 0) return;
            if (this.backward) spent = -spent;
            if (spent < 0) {
                this._invert();
                this.backward = !this.backward;
                spent = -spent;
            }
            var _currentTime = this._currentTime;
            var _singleTime = this.get_singleTime();
            var _totalTime = this._totalTime;
            var time = this._time;
            var delay = this._delay;
            var untilRest = _totalTime - this._rest;
            var delaying = _currentTime - delay < displayEngineUtils.TweenX._MIN;
            var resting = !delaying && displayEngineUtils.TweenX._MIN > untilRest - _currentTime;
            var body = _currentTime - delay;
            var repeatNum = _hcmn_.Math.floor(body / _singleTime);
            var position = body - repeatNum * _singleTime;
            var intervending = displayEngineUtils.TweenX._MIN > time - position;
            this._currentTime = _currentTime += spent;
            position += spent;
            body += spent;
            if (_currentTime - delay < displayEngineUtils.TweenX._MIN) {
                this.dispatch(displayEngineUtils.TweenX._DELAY);
                if (this._onDelay != null) this._onDelay();
                return;
            } else if (delaying) {
                this._head(0);
                delaying = false;
            }
            if (displayEngineUtils.TweenX._MIN > untilRest - _currentTime) {
                if (!resting) {
                    if (intervending) {
                        this.dispatch(displayEngineUtils.TweenX._REPEAT);
                        if (this._onRepeat != null) this._onRepeat();
                        this._head(repeatNum);
                    }
                    this._foot(this._repeat - 1);
                }
                if (displayEngineUtils.TweenX._MIN > _totalTime - _currentTime) this._finish();
                else {
                    this.dispatch(displayEngineUtils.TweenX._REST);
                    if (this._onRest != null) this._onRest();
                }
            } else {
                if (displayEngineUtils.TweenX._MIN > time - position) {
                    if (!intervending && repeatNum >= 0) this._foot(repeatNum);
                    if (position < _singleTime) {
                        this.dispatch(displayEngineUtils.TweenX._INTERVAL);
                        if (this._onInterval != null) this._onInterval();
                        return;
                    } else {
                        if (repeatNum >= 0) {
                            this.dispatch(displayEngineUtils.TweenX._REPEAT);
                            if (this._onRepeat != null) this._onRepeat();
                            this._head(repeatNum);
                        }
                        repeatNum = body / _singleTime | 0;
                        position = body - repeatNum * _singleTime;
                        if (displayEngineUtils.TweenX._MIN > time - position) {
                            this._foot(repeatNum);
                            this.dispatch(displayEngineUtils.TweenX._INTERVAL);
                            if (this._onInterval != null) this._onInterval();
                            return;
                        }
                    }
                } else if (intervending) {
                    this.dispatch(displayEngineUtils.TweenX._REPEAT);
                    if (this._onRepeat != null) this._onRepeat();
                    this._head(repeatNum);
                }
                this._apply(position, repeatNum);
                this.dispatch(displayEngineUtils.TweenX._UPDATE);
                if (this._onUpdate != null) this._onUpdate();
            }
        };
        displayEngineUtils.TweenX.prototype._head = function(repeatNum) {
            this._apply(0, repeatNum);
            this.dispatch(displayEngineUtils.TweenX._HEAD);
            if (this._onHead != null) this._onHead();
            this.dispatch(displayEngineUtils.TweenX._UPDATE);
            if (this._onUpdate != null) this._onUpdate();
        };
        displayEngineUtils.TweenX.prototype._foot = function(repeatNum) {
            this._apply(this._time, repeatNum);
            this.dispatch(displayEngineUtils.TweenX._UPDATE);
            if (this._onUpdate != null) this._onUpdate();
            this.dispatch(displayEngineUtils.TweenX._FOOT);
            if (this._onFoot != null) this._onFoot();
        };
        displayEngineUtils.TweenX.prototype._finish = function() {
            this._currentTime = this._totalTime;
            this.dispatch(displayEngineUtils.TweenX._FINISH);
            if (this._onFinish != null) this._onFinish();
            this._stop();
        };
        displayEngineUtils.TweenX.prototype._apply = function(p, repeatNum) {
            var t = this._getPosition(p, repeatNum % 2 == 1); {
                var _g = this._type;
                switch (_g[1]) {
                    case 2:
                        var _to = _g[4];
                        var _from = _g[3];
                        var target = _g[2];
                        var t2 = 1 - t;
                        if (this._fastMode) {
                            var _g1 = 0;
                            var _g2 = this._toKeys;
                            while (_g1 < _g2.length) {
                                var key = _g2[_g1];
                                ++_g1;
                                displayEngineUtils.TweenX.setField(target, key, this._fastCalc(displayEngineUtils.TweenX.field(_from, key), displayEngineUtils.TweenX.field(_to, key), t, t2));
                            }
                        } else {
                            var _g11 = 0;
                            var _g21 = this._toKeys;
                            while (_g11 < _g21.length) {
                                var key1 = _g21[_g11];
                                ++_g11;
                                displayEngineUtils.TweenX.setField(target, key1, this._calc(displayEngineUtils.TweenX.field(_from, key1), displayEngineUtils.TweenX.field(_to, key1), t, t2));
                            }
                        }
                        break;
                    case 1:
                        var tos = _g[4];
                        var froms = _g[3];
                        var targets = _g[2];
                        var t21 = 1 - t;
                        var i = 0;
                        var $it0 = $iterator(targets)();
                        while ($it0.hasNext()) {
                            var target1 = $it0.next();
                            var _to1 = tos[i];
                            var _from1 = froms[i++];
                            var _g12 = 0;
                            var _g22 = this._toKeys;
                            while (_g12 < _g22.length) {
                                var key2 = _g22[_g12];
                                ++_g12;
                                displayEngineUtils.TweenX.setField(target1, key2, this._calc(displayEngineUtils.TweenX.field(_from1, key2), displayEngineUtils.TweenX.field(_to1, key2), t, t21));
                            }
                        }
                        break;
                    case 3:
                        var _to2 = _g[4];
                        var _from2 = _g[3];
                        var func = _g[2];
                        var t22 = 1 - t;
                        var arr = [];
                        var _g23 = 0;
                        var _g13 = _to2.length;
                        while (_g23 < _g13) {
                            var i1 = _g23++;
                            arr[i1] = this._calc(_from2[i1], _to2[i1], t, t22);
                        }
                        _hcmn_.Reflect.callMethod(null, func, arr);
                        break;
                    case 0:
                        var g = _g[2];
                        var ts = g.tweens;
                        var spent = (this._time * t - g.current) * 1.00000001;
                        if (spent < 0) {
                            var _g14 = 1 - ts.length;
                            while (_g14 < 1) {
                                var i2 = _g14++;
                                ts[-i2]._update(spent);
                            }
                        } else {
                            var _g24 = 0;
                            var _g15 = ts.length;
                            while (_g24 < _g15) {
                                var i3 = _g24++;
                                ts[i3]._update(spent);
                            }
                        }
                        g.current = g.tweens[0].get_currentTime();
                        break;
                    case 4:
                        var f = _g[2];
                        if (t == 1) f();
                        break;
                }
            }
        };
        displayEngineUtils.TweenX.prototype._fastCalc = function(_from, _to, t1, t2) {
            return _from * t2 + _to * t1;
        };
        displayEngineUtils.TweenX.prototype._calc = function(_from, _to, t1, t2) {
            if (typeof(_to) == "number") {
                var d = _from * t2 + _to * t1;
                return d;
            } else {
                var i = 0;
                var l = displayEngineUtils.TweenX._rules.length;
                var f;
                var result = null;
                var ok = false;
                while (i < l)
                    if (_hcmn_.Std["is"](_to, (f = displayEngineUtils.TweenX._rules[i++]).inputClass)) {
                        ok = true;
                        result = f.calc(_from, _to, t1, t2, this);
                        break;
                    }
                if (!ok) throw new js._Boot.HaxeError(this.error("The tween rule for " + _hcmn_.Type.getClassName(_hcmn_.Type.getClass(_to)) + " is not defined"));
                return result;
            }
        };
        displayEngineUtils.TweenX.prototype.time = function(value) {
            if (value < 0) throw new js._Boot.HaxeError(this.error("Can't be negative value"));
            this.checkInited();
            this._timeIsDefault = false;
            this._time = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.ease = function(value) {
            this.checkInited();
            this._easeIsDefault = false;
            this._ease = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.delay = function(value) {
            if (value < 0) throw new js._Boot.HaxeError(this.error("Can't be negative value"));
            this.checkInited();
            this._delayIsDefault = false;
            this._delay = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.rest = function(value) {
            if (value < 0) throw new js._Boot.HaxeError(this.error("Can't be negative value"));
            this.checkInited();
            this._rest = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.interval = function(value) {
            if (value < 0) throw new js._Boot.HaxeError(this.error("Can't be negative value"));
            this.checkInited();
            this._intervalIsDefault = false;
            this._interval = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.repeat = function(value) {
            if (value == null) value = 0;
            if (value < 0) throw new js._Boot.HaxeError(this.error("Can't be negative value"));
            this.checkInited();
            this._repeatIsDefault = false;
            this._repeat = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.yoyo = function(value) {
            if (value == null) value = true;
            this.checkInited();
            this._yoyoIsDefault = false;
            this._yoyo = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.zigzag = function(value) {
            if (value == null) value = true;
            this.checkInited();
            this._zigzagIsDefault = false;
            this._zigzag = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.autoPlay = function(value) {
            if (value == null) value = true;
            this.checkInited();
            this._autoPlayIsDefault = false;
            this._autoPlay = value;
            return this;
        };
        displayEngineUtils.TweenX.prototype.skip = function(delay) {
            if (delay == null) delay = 0;
            this.checkInited();
            this._skip = delay;
            return this;
        };
        displayEngineUtils.TweenX.prototype.setTimeScale = function(value) {
            if (value == null) value = 0;
            this.set_timeScale(value);
            return this;
        };
        displayEngineUtils.TweenX.prototype.onPlay = function(handler) {
            this._onPlay = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onStop = function(handler) {
            this._onStop = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onDelay = function(handler) {
            this._onDelay = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onHead = function(handler) {
            this._onHead = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onUpdate = function(handler) {
            this._onUpdate = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onFoot = function(handler) {
            this._onFoot = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onRest = function(handler) {
            this._onRest = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onInterval = function(handler) {
            this._onInterval = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onRepeat = function(handler) {
            this._onRepeat = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.onFinish = function(handler) {
            this._onFinish = handler;
            return this;
        };
        displayEngineUtils.TweenX.prototype.addEventListener = function(type, listener) {
            this._addEventListener(type, listener);
            return this;
        };
        displayEngineUtils.TweenX.prototype.removeEventListener = function(type, listener) {
            this._removeEventListener(type, listener);
            return this;
        };
        displayEngineUtils.TweenX.prototype._addEventListener = function(type, listener) {
            var i = type[1];
            var arr;
            if (this._eventListeners[i] == null) arr = this._eventListeners[i] = [];
            else arr = this._eventListeners[i];
            if (!_hcmn_.Lambda.has(arr, listener)) arr.push(listener);
        };
        displayEngineUtils.TweenX.prototype._removeEventListener = function(type, listener) {
            var i = type[1];
            if (this._eventListeners[i] != null) {
                var x = listener;
                _hcmn_.HxOverrides.remove(this._eventListeners[i], x);
            }
        };
        displayEngineUtils.TweenX.prototype._getPosition = function(p, back) {
            var t = p / this._time;
            if (this._odd) back = !back;
            if (this._inverted) t = 1 - t;
            if (back) {
                if (this._yoyo) t = 1 - t;
                t = this._ease(t);
                if (this._zigzag) t = 1 - t;
            } else t = this._ease(t);
            return t;
        };
        displayEngineUtils.TweenX.prototype.checkInited = function() {
            if (this._inited) throw new js._Boot.HaxeError(this.error("Can't change params after initialization"));
        };
        displayEngineUtils.TweenX.prototype.dispatch = function(num) {
            var listeners = this._eventListeners[num];
            if (listeners != null) {
                var _g = 0;
                while (_g < listeners.length) {
                    var f = listeners[_g];
                    ++_g;
                    f(this);
                }
            }
        };
        displayEngineUtils.TweenX.prototype.initGroup = function(g) {
            var df = null;
            var gd = false;
            if (g.defaults != null) {
                df = displayEngineUtils.TweenX.dumpDefaults();
                gd = displayEngineUtils.TweenX._groupDefaults;
                displayEngineUtils.TweenX._groupDefaults = true;
                displayEngineUtils.TweenX.setDefaults(g.defaults);
                displayEngineUtils.TweenX.defaultAutoPlay = false;
            }
            var delay = 0.0;
            var max = 0.0;
            var result = []; {
                var _g = g.type;
                switch (_g[1]) {
                    case 0:
                        var $it0 = $iterator(g.source)();
                        while ($it0.hasNext()) {
                            var t = $it0.next();
                            if (t == null) continue; {
                                var _g1 = t.command;
                                switch (_g1[1]) {
                                    case 1:
                                        var d = _g1[2];
                                        delay += d;
                                        break;
                                    case 0:
                                        var o = _g1[2];
                                        result.push(o);
                                        o._autoPlay = false;
                                        if (displayEngineUtils.TweenX._groupDefaults && o._delayIsDefault) o._delay = displayEngineUtils.TweenX.defaultDelay;
                                        o._init();
                                        o._delay += delay;
                                        o._totalTime += delay;
                                        var totalTime = o._totalTime;
                                        if (o._skip != null) delay = delay + o._skip;
                                        else delay = totalTime;
                                        if (max < totalTime) max = totalTime;
                                        break;
                                }
                            }
                        }
                        break;
                    case 1:
                        var lag = _g[2];
                        var $it1 = $iterator(g.source)();
                        while ($it1.hasNext()) {
                            var t1 = $it1.next();
                            if (t1 == null) continue; {
                                var _g11 = t1.command;
                                switch (_g11[1]) {
                                    case 1:
                                        var d1 = _g11[2];
                                        delay += d1;
                                        break;
                                    case 0:
                                        var o1 = _g11[2];
                                        result.push(o1);
                                        o1._init();
                                        o1._delay += delay;
                                        o1._totalTime += delay;
                                        var totalTime1 = o1._totalTime;
                                        if (o1._skip != null) delay += o1._skip;
                                        else delay += lag;
                                        if (max < totalTime1) max = totalTime1;
                                        break;
                                }
                            }
                        }
                        break;
                }
            }
            var _g2 = 0;
            while (_g2 < result.length) {
                var t2 = result[_g2];
                ++_g2;
                var diff = max - t2._totalTime;
                t2._rest += diff;
                t2._totalTime += diff;
            }
            this._time = max;
            g.tweens = result;
            g.source = null;
            if (g.defaults != null) {
                displayEngineUtils.TweenX._groupDefaults = gd;
                displayEngineUtils.TweenX.setDefaults(df);
            }
        };
        displayEngineUtils.TweenX.tweens = null;
        displayEngineUtils.TweenX.get_tweens = function() {
            return displayEngineUtils.TweenX._tweens;
        };
        displayEngineUtils.TweenX.prevTime = null;
        displayEngineUtils.TweenX.rules = null;
        displayEngineUtils.TweenX.get_rules = function() {
            return displayEngineUtils.TweenX._rules;
        };
        displayEngineUtils.TweenX.dumpDefaults = function() {
            return new displayEngineUtils.DefaultsX().dump();
        };
        displayEngineUtils.TweenX.setDefaults = function(defaults) {
            defaults.apply();
        };
        displayEngineUtils.TweenX.initDefaults = function() {
            new displayEngineUtils.DefaultsX().apply();
        };
        displayEngineUtils.TweenX.set_updateMode = function(value) {
            displayEngineUtils.TweenX.updateMode = value;
            displayEngineUtils.TweenX.initManager();
            return value;
        };
        displayEngineUtils.TweenX.initManager = function() {
            displayEngineUtils.TweenX.managerInited = true;
            displayEngineUtils.TweenX.stopUpdater(); {
                var _g = displayEngineUtils.TweenX.updateMode;
                switch (_g[1]) {
                    case 1:
                        var f = _g[2];
                        displayEngineUtils.TweenX.prevTime = displayEngineUtils.TweenX.getTime();
                        displayEngineUtils.TweenX.setInterval(displayEngineUtils.TweenX.mainLoop, _hcmn_.Math.round(1000 / f));
                        break;
                    case 0:
                        break;
                }
            }
        };
        displayEngineUtils.TweenX.mainLoop = function() {
            {
                var _g = displayEngineUtils.TweenX.updateMode;
                switch (_g[1]) {
                    case 1:
                        var f = _g[2];
                        displayEngineUtils.TweenX.manualUpdate((displayEngineUtils.TweenX.getTime() - displayEngineUtils.TweenX.prevTime) / 1000);
                        displayEngineUtils.TweenX.prevTime = displayEngineUtils.TweenX.getTime();
                        break;
                    case 0:
                        throw new js._Boot.HaxeError("invalid auto update");
                        break;
                }
            }
        };
        displayEngineUtils.TweenX.stopUpdater = function() {
            if (displayEngineUtils.TweenX._timer != null) {
                displayEngineUtils.TweenX._timer.stop();
                displayEngineUtils.TweenX._timer = null;
            }
        };
        displayEngineUtils.TweenX.manualUpdate = function(time) {
            displayEngineUtils.TweenX.initTweens();
            var l = displayEngineUtils.TweenX._tweens.length;
            var i = 0;
            while (i < l) {
                var t = displayEngineUtils.TweenX._tweens[i++];
                t._update(time * t.timeScale * displayEngineUtils.TweenX.topLevelTimeScale);
                if (!t.playing) {
                    displayEngineUtils.TweenX._tweens.splice(--i, 1);
                    l--;
                }
            }
            displayEngineUtils.TweenX._resetLog();
        };
        displayEngineUtils.TweenX.initTweens = function() {
            var _g = 0;
            var _g1 = displayEngineUtils.TweenX._addedTweens;
            while (_g < _g1.length) {
                var t = _g1[_g];
                ++_g;
                t._init();
            }
            displayEngineUtils.TweenX._addedTweens.splice(0, displayEngineUtils.TweenX._addedTweens.length);
        };
        displayEngineUtils.TweenX.clear = function() {
            var _g = 0;
            var _g1 = displayEngineUtils.TweenX._addedTweens;
            while (_g < _g1.length) {
                var t = _g1[_g];
                ++_g;
                t._autoPlay = false;
            }
            displayEngineUtils.TweenX.stopAll(displayEngineUtils.TweenX.get_tweens());
        };
        displayEngineUtils.TweenX.addRule = function(rule) {
            var i = 0;
            var l = displayEngineUtils.TweenX._rules.length;
            while (i < l) {
                var r = displayEngineUtils.TweenX._rules[i++];
                if (r.inputClass == rule.inputClass) {
                    displayEngineUtils.TweenX._rules.splice(i--, 1);
                    l--;
                }
            }
            displayEngineUtils.TweenX._rules.push(rule);
        };
        displayEngineUtils.TweenX.addRules = function(rules) {
            var $it0 = $iterator(rules)();
            while ($it0.hasNext()) {
                var r = $it0.next();
                displayEngineUtils.TweenX.addRule(r);
            }
        };
        displayEngineUtils.TweenX.from = function(target, _to, delay, repeat, interval, autoPlay, posInfos) {
            if (_hcmn_.Reflect.field(target, "getDisplayObject") != null) target = target.getDisplayObject();
            delay /= 1000;
            var _g = 0;
            var _g1 = _hcmn_.Reflect.fields(_to);
            while (_g < _g1.length) {
                var prop = _g1[_g];
                ++_g;
                switch (prop) {
                    case "scaleX":
                        displayEngineUtils.TweenX.from(target.scale, {
                            'x': _hcmn_.Reflect.field(_to, prop)
                        }, delay * 1000, repeat, interval, autoPlay, posInfos);
                        break;
                    case "scaleY":
                        displayEngineUtils.TweenX.from(target.scale, {
                            'y': _hcmn_.Reflect.field(_to, prop)
                        }, delay * 1000, repeat, interval, autoPlay, posInfos);
                        break;
                    case "rotation":
                        _hcmn_.Reflect.setField(_to, prop, displayEngineUtils.Utils.degToRad(_hcmn_.Reflect.field(_to, prop)));
                        break;
                    default:
                }
            }
            if (_to == null) _to = {};
            if (!displayEngineUtils.TweenX.isIterable(target)) return new displayEngineUtils.StandardTweenX(displayEngineUtils.TweenTypeX.FROM_TO(target, {}, _to), 0, displayEngineUtils.EaseX.linear, delay, repeat, false, false, interval, autoPlay, posInfos);
            else return new displayEngineUtils.StandardTweenX(displayEngineUtils.TweenTypeX.ARRAY(target, [{}], [_to]), 0, displayEngineUtils.EaseX.linear, delay, repeat, false, false, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.to = function(target, _to, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            console.log("tweenx: " + delay);
            if (_hcmn_.Reflect.field(target, "getDisplayObject") != null) target = target.getDisplayObject();
            if ((target instanceof Array) && target.__enum__ == null) {
                var i = 0;
                while (target[i] != null) {
                    if (_hcmn_.Reflect.field(target[i], "getDisplayObject") != null) target[i] = target[i].getDisplayObject();
                    i++;
                }
            }
            time /= 1000;
            delay /= 1000;
            var _g = 0;
            var _g1 = _hcmn_.Reflect.fields(_to);
            while (_g < _g1.length) {
                var prop = _g1[_g];
                ++_g;
                switch (prop) {
                    case "rotation":
                        _hcmn_.Reflect.setField(_to, prop, displayEngineUtils.Utils.degToRad(_hcmn_.Reflect.field(_to, prop)));
                        break;
                    default:
                }
            }
            if (_to == null) _to = {};
            if (!displayEngineUtils.TweenX.isIterable(target)) return new displayEngineUtils.StandardTweenX(displayEngineUtils.TweenTypeX.FROM_TO(target, {}, _to), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
            else return new displayEngineUtils.StandardTweenX(displayEngineUtils.TweenTypeX.ARRAY(target, [{}], [_to]), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.tweenFunc = function(func, _from, _to, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.FUNC(func, _hcmn_.Lambda.array(_from), _hcmn_.Lambda.array(_to)), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.tweenFunc1 = function(func, from1, to1, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.FUNC(func, [from1], [to1]), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.tweenFunc2 = function(func, from1, from2, to1, to2, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.FUNC(func, [from1, from2], [to1, to2]), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.tweenFunc3 = function(func, from1, from2, from3, to1, to2, to3, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.FUNC(func, [from1, from2, from3], [to1, to2, to3]), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.tweenFunc4 = function(func, from1, from2, from3, from4, to1, to2, to3, to4, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.FUNC(func, [from1, from2, from3, from4], [to1, to2, to3, to4]), time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.TweenX.func = function(func, delay, repeat, interval, posInfos) {
            return new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.CALL(func), 0, displayEngineUtils.EaseX.linear, delay, repeat, false, false, interval, false, posInfos);
        };
        displayEngineUtils.TweenX.playAll = function(tweens) {
            var $it0 = $iterator(tweens)();
            while ($it0.hasNext()) {
                var t = $it0.next(); {
                    var _g = t.command;
                    switch (_g[1]) {
                        case 1:
                            break;
                        case 0:
                            var o = _g[2];
                            o.play();
                            break;
                    }
                }
            }
        };
        displayEngineUtils.TweenX.stopAll = function(tweens) {
            var $it0 = $iterator(tweens)();
            while ($it0.hasNext()) {
                var t = $it0.next(); {
                    var _g = t.command;
                    switch (_g[1]) {
                        case 1:
                            break;
                        case 0:
                            var o = _g[2];
                            o.stop();
                            break;
                    }
                }
            }
        };
        displayEngineUtils.TweenX.gotoAll = function(tweens, time, andPlay) {
            if (andPlay == null) andPlay = false;
            if (time == null) time = 0;
            var $it0 = $iterator(tweens)();
            while ($it0.hasNext()) {
                var t = $it0.next(); {
                    var _g = t.command;
                    switch (_g[1]) {
                        case 1:
                            break;
                        case 0:
                            var o = _g[2];
                            o["goto"](time, andPlay);
                            break;
                    }
                }
            }
        };
        displayEngineUtils.TweenX.updateAll = function(tweens, time) {
            var $it0 = $iterator(tweens)();
            while ($it0.hasNext()) {
                var t = $it0.next(); {
                    var _g = t.command;
                    switch (_g[1]) {
                        case 1:
                            break;
                        case 0:
                            var o = _g[2];
                            if (!o._inited) o._init();
                            o.update(time);
                            break;
                    }
                }
            }
        };
        displayEngineUtils.TweenX.serial = function(tweens, defaults, posInfos) {
            return displayEngineUtils.TweenX._group(tweens, displayEngineUtils.GroupTypeX.SERIAL, defaults, posInfos);
        };
        displayEngineUtils.TweenX.lag = function(tweens, delay, defaults, posInfos) {
            if (delay == null) delay = 0.1;
            return displayEngineUtils.TweenX._group(tweens, displayEngineUtils.GroupTypeX.LAG(delay), defaults, posInfos);
        };
        displayEngineUtils.TweenX.parallel = function(tweens, defaults, posInfos) {
            return displayEngineUtils.TweenX._group(tweens, displayEngineUtils.GroupTypeX.LAG(0), defaults, posInfos);
        };
        displayEngineUtils.TweenX.wait = function(delay, posInfos) {
            if (delay == null) delay = 0.1;
            return new displayEngineUtils.CommandX(displayEngineUtils.CommandTypeX.WAIT(delay), posInfos);
        };
        displayEngineUtils.TweenX._group = function(tweens, type, defaults, posInfos) {
            var parent = new displayEngineUtils.TweenX(displayEngineUtils.TweenTypeX.GROUP(new displayEngineUtils.GroupX(tweens, type, defaults)), null, null, null, null, null, null, null, null, posInfos);
            var $it0 = $iterator(tweens)();
            while ($it0.hasNext()) {
                var t = $it0.next();
                if (t == null) continue; {
                    var _g = t.command;
                    switch (_g[1]) {
                        case 0:
                            var o = _g[2];
                            displayEngineUtils.TweenX._lock(o);
                            o._parent = parent;
                            break;
                        default:
                    }
                }
            }
            return parent;
        };
        displayEngineUtils.TweenX._lock = function(o) {
            if (o._inited) throw new js._Boot.HaxeError(o.error("Can't serialize initialized TweenCommandX"));
            o._autoPlay = false;
        };
        displayEngineUtils.TweenX.getTime = function() {
            return new _hcmn_.Date().getTime();
        };
        displayEngineUtils.TweenX._timer = null;
        displayEngineUtils.TweenX.setInterval = function(f, t) {
            if (displayEngineUtils.TweenX._timer != null) displayEngineUtils.TweenX._timer.stop();
            displayEngineUtils.TweenX._timer = new _hcmn_.haxe_Timer(t);
            displayEngineUtils.TweenX._timer.run = f;
        };
        displayEngineUtils.TweenX.fields = function(t) {
            return _hcmn_.Reflect.fields(t);
        };
        displayEngineUtils.TweenX.hashObject = function(o) {
            if (displayEngineUtils.TweenX.dictionary.get(o) != null) return displayEngineUtils.TweenX.dictionary.get(o);
            else {
                displayEngineUtils.TweenX._objCounter = 1 + displayEngineUtils.TweenX._objCounter % 33029;
                displayEngineUtils.TweenX.dictionary.set(o, displayEngineUtils.TweenX._objCounter);
                return displayEngineUtils.TweenX._objCounter;
            }
        };
        displayEngineUtils.TweenX._resetLog = function() {
            displayEngineUtils.TweenX._initLog = [];
            displayEngineUtils.TweenX.dictionary = new haxe.ds.ObjectMap();
        };
        displayEngineUtils.TweenX.field = function(o, key) {
            if (Object.prototype.hasOwnProperty.call(o, key)) return _hcmn_.Reflect.getProperty(o, key);
            else if (key == "scaleX" && o.scale != null) return o.scale.x;
            else if (key == "scaleY" && o.scale != null) return o.scale.y;
            else return o[key];
        };
        displayEngineUtils.TweenX.setField = function(o, key, value) {
            var tmp;
            if (o.__properties__ && (tmp = o.__properties__["set_" + key])) o[tmp](value);
            else if (key == "scaleX") {
                if (o.scale != null) o.scale.x = value;
                else o[key] = value;
            } else if (key == "scaleY") {
                if (o.scale != null) o.scale.y = value;
                else o[key] = value;
            } else o[key] = value;
        };
        displayEngineUtils.TweenX.isIterable = function(d) {
            return d != null && ((d instanceof Array) && d.__enum__ == null || Object.prototype.hasOwnProperty.call(d, "iterator") && _hcmn_.Reflect.isFunction($iterator(d)) && $iterator(d)() != null);
        };
        displayEngineUtils.TweenX.prototype.__class__ = displayEngineUtils.TweenX;
        displayEngineUtils.ArrayChainX = function() {};
        displayEngineUtils.ArrayChainX.__name__ = ["displayEngineUtils", "ArrayChainX"];
        displayEngineUtils.ArrayChainX.alpha = function(tween, alpha) {
            var t = tween;
            t._setTo("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX._alpha = function(tween, alpha) {
            var t = tween;
            t._setRelativeTo("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__alpha = function(tween, alpha) {
            var t = tween;
            t._setRelativeTo2("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.x = function(tween, x) {
            var t = tween;
            t._setTo("x", x);
            return tween;
        };
        displayEngineUtils.ArrayChainX._x = function(tween, x) {
            var t = tween;
            t._setRelativeTo("x", x);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__x = function(tween, x) {
            var t = tween;
            t._setRelativeTo2("x", x);
            return tween;
        };
        displayEngineUtils.ArrayChainX.y = function(tween, y) {
            var t = tween;
            t._setTo("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX._y = function(tween, y) {
            var t = tween;
            t._setRelativeTo("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__y = function(tween, y) {
            var t = tween;
            t._setRelativeTo2("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX.z = function(tween, z) {
            var t = tween;
            t._setTo("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX._z = function(tween, z) {
            var t = tween;
            t._setRelativeTo("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__z = function(tween, z) {
            var t = tween;
            t._setRelativeTo2("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX.scaleX = function(tween, scaleX) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ArrayChainX._scaleX = function(tween, scaleX) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__scaleX = function(tween, scaleX) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.scaleY = function(tween, scaleY) {
            var t = tween;
            t._setTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX._scaleY = function(tween, scaleY) {
            var t = tween;
            t._setRelativeTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__scaleY = function(tween, scaleY) {
            var t = tween;
            t._setRelativeTo2("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX._scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setRelativeTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setRelativeTo2("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotation = function(tween, rotation) {
            var t = tween;
            t._setTo("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotation = function(tween, rotation) {
            var t = tween;
            t._setRelativeTo("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotation = function(tween, rotation) {
            var t = tween;
            t._setRelativeTo2("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotationX = function(tween, rotationX) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotationX = function(tween, rotationX) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotationX = function(tween, rotationX) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotationY = function(tween, rotationY) {
            var t = tween;
            t._setTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotationY = function(tween, rotationY) {
            var t = tween;
            t._setRelativeTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotationY = function(tween, rotationY) {
            var t = tween;
            t._setRelativeTo2("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setRelativeTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setRelativeTo2("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.top = function(tween, top) {
            var t = tween;
            t._setTo("top", top);
            return tween;
        };
        displayEngineUtils.ArrayChainX._top = function(tween, top) {
            var t = tween;
            t._setRelativeTo("top", top);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__top = function(tween, top) {
            var t = tween;
            t._setRelativeTo2("top", top);
            return tween;
        };
        displayEngineUtils.ArrayChainX.left = function(tween, left) {
            var t = tween;
            t._setTo("left", left);
            return tween;
        };
        displayEngineUtils.ArrayChainX._left = function(tween, left) {
            var t = tween;
            t._setRelativeTo("left", left);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__left = function(tween, left) {
            var t = tween;
            t._setRelativeTo2("left", left);
            return tween;
        };
        displayEngineUtils.ArrayChainX.right = function(tween, right) {
            var t = tween;
            t._setTo("right", right);
            return tween;
        };
        displayEngineUtils.ArrayChainX._right = function(tween, right) {
            var t = tween;
            t._setRelativeTo("right", right);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__right = function(tween, right) {
            var t = tween;
            t._setRelativeTo2("right", right);
            return tween;
        };
        displayEngineUtils.ArrayChainX.bottom = function(tween, bottom) {
            var t = tween;
            t._setTo("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ArrayChainX._bottom = function(tween, bottom) {
            var t = tween;
            t._setRelativeTo("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__bottom = function(tween, bottom) {
            var t = tween;
            t._setRelativeTo2("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ArrayChainX.width = function(tween, width) {
            var t = tween;
            t._setTo("width", width);
            return tween;
        };
        displayEngineUtils.ArrayChainX._width = function(tween, width) {
            var t = tween;
            t._setRelativeTo("width", width);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__width = function(tween, width) {
            var t = tween;
            t._setRelativeTo2("width", width);
            return tween;
        };
        displayEngineUtils.ArrayChainX.height = function(tween, height) {
            var t = tween;
            t._setTo("height", height);
            return tween;
        };
        displayEngineUtils.ArrayChainX._height = function(tween, height) {
            var t = tween;
            t._setRelativeTo("height", height);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__height = function(tween, height) {
            var t = tween;
            t._setRelativeTo2("height", height);
            return tween;
        };
        displayEngineUtils.ArrayChainX.visible = function(tween, visible) {
            var t = tween;
            t._setTo("visible", visible);
            return tween;
        };
        displayEngineUtils.ArrayChainX.enabled = function(tween, enabled) {
            var t = tween;
            t._setTo("enabled", enabled);
            return tween;
        };
        displayEngineUtils.ArrayChainX.doubleClickEnabled = function(tween, doubleClickEnabled) {
            var t = tween;
            t._setTo("doubleClickEnabled", doubleClickEnabled);
            return tween;
        };
        displayEngineUtils.ArrayChainX.tabEnabled = function(tween, tabEnabled) {
            var t = tween;
            t._setTo("tabEnabled", tabEnabled);
            return tween;
        };
        displayEngineUtils.ArrayChainX.mouseEnabled = function(tween, mouseEnabled) {
            var t = tween;
            t._setTo("mouseEnabled", mouseEnabled);
            return tween;
        };
        displayEngineUtils.ArrayChainX.mouseChildren = function(tween, mouseChildren) {
            var t = tween;
            t._setTo("mouseChildren", mouseChildren);
            return tween;
        };
        displayEngineUtils.ArrayChainX.tabChildren = function(tween, tabChildren) {
            var t = tween;
            t._setTo("tabChildren", tabChildren);
            return tween;
        };
        displayEngineUtils.ArrayChainX.xy = function(tween, x, y) {
            var t = tween;
            t._setTo("x", x);
            t._setTo("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX._xy = function(tween, x, y) {
            var t = tween;
            t._setRelativeTo("x", x);
            t._setRelativeTo("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__xy = function(tween, x, y) {
            var t = tween;
            t._setRelativeTo2("x", x);
            t._setRelativeTo2("y", y);
            return tween;
        };
        displayEngineUtils.ArrayChainX.scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            t._setTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX._scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            t._setRelativeTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            t._setRelativeTo2("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            t._setTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            t._setRelativeTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            t._setRelativeTo2("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.xyz = function(tween, x, y, z) {
            var t = tween;
            t._setTo("x", x);
            t._setTo("y", y);
            t._setTo("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX._xyz = function(tween, x, y, z) {
            var t = tween;
            t._setRelativeTo("x", x);
            t._setRelativeTo("y", y);
            t._setRelativeTo("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__xyz = function(tween, x, y, z) {
            var t = tween;
            t._setRelativeTo2("x", x);
            t._setRelativeTo2("y", y);
            t._setRelativeTo2("z", z);
            return tween;
        };
        displayEngineUtils.ArrayChainX.scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            t._setTo("scaleY", scaleY);
            t._setTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX._scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            t._setRelativeTo("scaleY", scaleY);
            t._setRelativeTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            t._setRelativeTo2("scaleY", scaleY);
            t._setRelativeTo2("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            t._setTo("rotationY", rotationY);
            t._setTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            t._setRelativeTo("rotationY", rotationY);
            t._setRelativeTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            t._setRelativeTo2("rotationY", rotationY);
            t._setRelativeTo2("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ArrayChainX.a = function(tween, a) {
            var t = tween;
            t._setTo("a", a);
            return tween;
        };
        displayEngineUtils.ArrayChainX._a = function(tween, a) {
            var t = tween;
            t._setRelativeTo("a", a);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__a = function(tween, a) {
            var t = tween;
            t._setRelativeTo2("a", a);
            return tween;
        };
        displayEngineUtils.ArrayChainX.b = function(tween, b) {
            var t = tween;
            t._setTo("b", b);
            return tween;
        };
        displayEngineUtils.ArrayChainX._b = function(tween, b) {
            var t = tween;
            t._setRelativeTo("b", b);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__b = function(tween, b) {
            var t = tween;
            t._setRelativeTo2("b", b);
            return tween;
        };
        displayEngineUtils.ArrayChainX.c = function(tween, c) {
            var t = tween;
            t._setTo("c", c);
            return tween;
        };
        displayEngineUtils.ArrayChainX._c = function(tween, c) {
            var t = tween;
            t._setRelativeTo("c", c);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__c = function(tween, c) {
            var t = tween;
            t._setRelativeTo2("c", c);
            return tween;
        };
        displayEngineUtils.ArrayChainX.d = function(tween, d) {
            var t = tween;
            t._setTo("d", d);
            return tween;
        };
        displayEngineUtils.ArrayChainX._d = function(tween, d) {
            var t = tween;
            t._setRelativeTo("d", d);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__d = function(tween, d) {
            var t = tween;
            t._setRelativeTo2("d", d);
            return tween;
        };
        displayEngineUtils.ArrayChainX.tx = function(tween, tx) {
            var t = tween;
            t._setTo("tx", tx);
            return tween;
        };
        displayEngineUtils.ArrayChainX._tx = function(tween, tx) {
            var t = tween;
            t._setRelativeTo("tx", tx);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__tx = function(tween, tx) {
            var t = tween;
            t._setRelativeTo2("tx", tx);
            return tween;
        };
        displayEngineUtils.ArrayChainX.ty = function(tween, ty) {
            var t = tween;
            t._setTo("ty", ty);
            return tween;
        };
        displayEngineUtils.ArrayChainX._ty = function(tween, ty) {
            var t = tween;
            t._setRelativeTo("ty", ty);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__ty = function(tween, ty) {
            var t = tween;
            t._setRelativeTo2("ty", ty);
            return tween;
        };
        displayEngineUtils.ArrayChainX.alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setTo("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX._alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setRelativeTo("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setRelativeTo2("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setTo("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX._alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setRelativeTo("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setRelativeTo2("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.redOffset = function(tween, redOffset) {
            var t = tween;
            t._setTo("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX._redOffset = function(tween, redOffset) {
            var t = tween;
            t._setRelativeTo("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__redOffset = function(tween, redOffset) {
            var t = tween;
            t._setRelativeTo2("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setTo("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX._redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setRelativeTo("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setRelativeTo2("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setTo("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX._greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setRelativeTo("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setRelativeTo2("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setTo("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX._greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setRelativeTo("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setRelativeTo2("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setTo("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX._blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setRelativeTo("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setRelativeTo2("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ArrayChainX.blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setTo("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX._blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setRelativeTo("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setRelativeTo2("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ArrayChainX.blurX = function(tween, blurX) {
            var t = tween;
            t._setTo("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ArrayChainX._blurX = function(tween, blurX) {
            var t = tween;
            t._setRelativeTo("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__blurX = function(tween, blurX) {
            var t = tween;
            t._setRelativeTo2("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ArrayChainX.blurY = function(tween, blurY) {
            var t = tween;
            t._setTo("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ArrayChainX._blurY = function(tween, blurY) {
            var t = tween;
            t._setRelativeTo("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__blurY = function(tween, blurY) {
            var t = tween;
            t._setRelativeTo2("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ArrayChainX.highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setTo("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX._highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setRelativeTo("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setRelativeTo2("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.highlightColor = function(tween, highlightColor) {
            var t = tween;
            t._setTo("highlightColor", highlightColor);
            return tween;
        };
        displayEngineUtils.ArrayChainX.shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setTo("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX._shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setRelativeTo("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setRelativeTo2("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ArrayChainX.shadowColor = function(tween, shadowColor) {
            var t = tween;
            t._setTo("shadowColor", shadowColor);
            return tween;
        };
        displayEngineUtils.ArrayChainX.strength = function(tween, strength) {
            var t = tween;
            t._setTo("strength", strength);
            return tween;
        };
        displayEngineUtils.ArrayChainX._strength = function(tween, strength) {
            var t = tween;
            t._setRelativeTo("strength", strength);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__strength = function(tween, strength) {
            var t = tween;
            t._setRelativeTo2("strength", strength);
            return tween;
        };
        displayEngineUtils.ArrayChainX.quality = function(tween, quality) {
            var t = tween;
            t._setTo("quality", quality);
            return tween;
        };
        displayEngineUtils.ArrayChainX._quality = function(tween, quality) {
            var t = tween;
            t._setRelativeTo("quality", quality);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__quality = function(tween, quality) {
            var t = tween;
            t._setRelativeTo2("quality", quality);
            return tween;
        };
        displayEngineUtils.ArrayChainX.color = function(tween, color) {
            var t = tween;
            t._setTo("color", color);
            return tween;
        };
        displayEngineUtils.ArrayChainX.angle = function(tween, angle) {
            var t = tween;
            t._setTo("angle", angle);
            return tween;
        };
        displayEngineUtils.ArrayChainX._angle = function(tween, angle) {
            var t = tween;
            t._setRelativeTo("angle", angle);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__angle = function(tween, angle) {
            var t = tween;
            t._setRelativeTo2("angle", angle);
            return tween;
        };
        displayEngineUtils.ArrayChainX.distance = function(tween, distance) {
            var t = tween;
            t._setTo("distance", distance);
            return tween;
        };
        displayEngineUtils.ArrayChainX._distance = function(tween, distance) {
            var t = tween;
            t._setRelativeTo("distance", distance);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__distance = function(tween, distance) {
            var t = tween;
            t._setRelativeTo2("distance", distance);
            return tween;
        };
        displayEngineUtils.ArrayChainX.bias = function(tween, bias) {
            var t = tween;
            t._setTo("bias", bias);
            return tween;
        };
        displayEngineUtils.ArrayChainX._bias = function(tween, bias) {
            var t = tween;
            t._setRelativeTo("bias", bias);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__bias = function(tween, bias) {
            var t = tween;
            t._setRelativeTo2("bias", bias);
            return tween;
        };
        displayEngineUtils.ArrayChainX.alphas = function(tween, alphas) {
            var t = tween;
            t._setTo("alphas", alphas);
            return tween;
        };
        displayEngineUtils.ArrayChainX.ratios = function(tween, ratios) {
            var t = tween;
            t._setTo("ratios", ratios);
            return tween;
        };
        displayEngineUtils.ArrayChainX.knockout = function(tween, knockout) {
            var t = tween;
            t._setTo("knockout", knockout);
            return tween;
        };
        displayEngineUtils.ArrayChainX.inner = function(tween, inner) {
            var t = tween;
            t._setTo("inner", inner);
            return tween;
        };
        displayEngineUtils.ArrayChainX.bitmapData = function(tween, bitmapData) {
            var t = tween;
            t._setTo("bitmapData", bitmapData);
            return tween;
        };
        displayEngineUtils.ArrayChainX.pan = function(tween, pan) {
            var t = tween;
            t._setTo("pan", pan);
            return tween;
        };
        displayEngineUtils.ArrayChainX._pan = function(tween, pan) {
            var t = tween;
            t._setRelativeTo("pan", pan);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__pan = function(tween, pan) {
            var t = tween;
            t._setRelativeTo2("pan", pan);
            return tween;
        };
        displayEngineUtils.ArrayChainX.volume = function(tween, volume) {
            var t = tween;
            t._setTo("volume", volume);
            return tween;
        };
        displayEngineUtils.ArrayChainX._volume = function(tween, volume) {
            var t = tween;
            t._setRelativeTo("volume", volume);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__volume = function(tween, volume) {
            var t = tween;
            t._setRelativeTo2("volume", volume);
            return tween;
        };
        displayEngineUtils.ArrayChainX.leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setTo("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX._leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setRelativeTo("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setRelativeTo2("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX.leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setTo("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX._leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setRelativeTo("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setRelativeTo2("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setTo("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setRelativeTo("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setRelativeTo2("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ArrayChainX.rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setTo("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX._rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setRelativeTo("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX.__rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setRelativeTo2("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ArrayChainX.prototype.__class__ = displayEngineUtils.ArrayChainX;
        displayEngineUtils.ChainX = function() {};
        displayEngineUtils.ChainX.__name__ = ["displayEngineUtils", "ChainX"];
        displayEngineUtils.ChainX.alpha = function(tween, alpha) {
            var t = tween;
            t._setTo("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ChainX._alpha = function(tween, alpha) {
            var t = tween;
            t._setRelativeTo("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ChainX.__alpha = function(tween, alpha) {
            var t = tween;
            t._setRelativeTo2("alpha", alpha);
            return tween;
        };
        displayEngineUtils.ChainX.x = function(tween, x) {
            var t = tween;
            t._setTo("x", x);
            return tween;
        };
        displayEngineUtils.ChainX._x = function(tween, x) {
            var t = tween;
            t._setRelativeTo("x", x);
            return tween;
        };
        displayEngineUtils.ChainX.__x = function(tween, x) {
            var t = tween;
            t._setRelativeTo2("x", x);
            return tween;
        };
        displayEngineUtils.ChainX.y = function(tween, y) {
            var t = tween;
            t._setTo("y", y);
            return tween;
        };
        displayEngineUtils.ChainX._y = function(tween, y) {
            var t = tween;
            t._setRelativeTo("y", y);
            return tween;
        };
        displayEngineUtils.ChainX.__y = function(tween, y) {
            var t = tween;
            t._setRelativeTo2("y", y);
            return tween;
        };
        displayEngineUtils.ChainX.z = function(tween, z) {
            var t = tween;
            t._setTo("z", z);
            return tween;
        };
        displayEngineUtils.ChainX._z = function(tween, z) {
            var t = tween;
            t._setRelativeTo("z", z);
            return tween;
        };
        displayEngineUtils.ChainX.__z = function(tween, z) {
            var t = tween;
            t._setRelativeTo2("z", z);
            return tween;
        };
        displayEngineUtils.ChainX.scaleX = function(tween, scaleX) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ChainX._scaleX = function(tween, scaleX) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ChainX.__scaleX = function(tween, scaleX) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            return tween;
        };
        displayEngineUtils.ChainX.scaleY = function(tween, scaleY) {
            var t = tween;
            t._setTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX._scaleY = function(tween, scaleY) {
            var t = tween;
            t._setRelativeTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX.__scaleY = function(tween, scaleY) {
            var t = tween;
            t._setRelativeTo2("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX.scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX._scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setRelativeTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX.__scaleZ = function(tween, scaleZ) {
            var t = tween;
            t._setRelativeTo2("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX.rotation = function(tween, rotation) {
            var t = tween;
            t._setTo("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ChainX._rotation = function(tween, rotation) {
            var t = tween;
            t._setRelativeTo("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ChainX.__rotation = function(tween, rotation) {
            var t = tween;
            t._setRelativeTo2("rotation", rotation);
            return tween;
        };
        displayEngineUtils.ChainX.rotationX = function(tween, rotationX) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ChainX._rotationX = function(tween, rotationX) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ChainX.__rotationX = function(tween, rotationX) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            return tween;
        };
        displayEngineUtils.ChainX.rotationY = function(tween, rotationY) {
            var t = tween;
            t._setTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX._rotationY = function(tween, rotationY) {
            var t = tween;
            t._setRelativeTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX.__rotationY = function(tween, rotationY) {
            var t = tween;
            t._setRelativeTo2("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX.rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX._rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setRelativeTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX.__rotationZ = function(tween, rotationZ) {
            var t = tween;
            t._setRelativeTo2("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX.top = function(tween, top) {
            var t = tween;
            t._setTo("top", top);
            return tween;
        };
        displayEngineUtils.ChainX._top = function(tween, top) {
            var t = tween;
            t._setRelativeTo("top", top);
            return tween;
        };
        displayEngineUtils.ChainX.__top = function(tween, top) {
            var t = tween;
            t._setRelativeTo2("top", top);
            return tween;
        };
        displayEngineUtils.ChainX.left = function(tween, left) {
            var t = tween;
            t._setTo("left", left);
            return tween;
        };
        displayEngineUtils.ChainX._left = function(tween, left) {
            var t = tween;
            t._setRelativeTo("left", left);
            return tween;
        };
        displayEngineUtils.ChainX.__left = function(tween, left) {
            var t = tween;
            t._setRelativeTo2("left", left);
            return tween;
        };
        displayEngineUtils.ChainX.right = function(tween, right) {
            var t = tween;
            t._setTo("right", right);
            return tween;
        };
        displayEngineUtils.ChainX._right = function(tween, right) {
            var t = tween;
            t._setRelativeTo("right", right);
            return tween;
        };
        displayEngineUtils.ChainX.__right = function(tween, right) {
            var t = tween;
            t._setRelativeTo2("right", right);
            return tween;
        };
        displayEngineUtils.ChainX.bottom = function(tween, bottom) {
            var t = tween;
            t._setTo("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ChainX._bottom = function(tween, bottom) {
            var t = tween;
            t._setRelativeTo("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ChainX.__bottom = function(tween, bottom) {
            var t = tween;
            t._setRelativeTo2("bottom", bottom);
            return tween;
        };
        displayEngineUtils.ChainX.width = function(tween, width) {
            var t = tween;
            t._setTo("width", width);
            return tween;
        };
        displayEngineUtils.ChainX._width = function(tween, width) {
            var t = tween;
            t._setRelativeTo("width", width);
            return tween;
        };
        displayEngineUtils.ChainX.__width = function(tween, width) {
            var t = tween;
            t._setRelativeTo2("width", width);
            return tween;
        };
        displayEngineUtils.ChainX.height = function(tween, height) {
            var t = tween;
            t._setTo("height", height);
            return tween;
        };
        displayEngineUtils.ChainX._height = function(tween, height) {
            var t = tween;
            t._setRelativeTo("height", height);
            return tween;
        };
        displayEngineUtils.ChainX.__height = function(tween, height) {
            var t = tween;
            t._setRelativeTo2("height", height);
            return tween;
        };
        displayEngineUtils.ChainX.visible = function(tween, visible) {
            var t = tween;
            t._setTo("visible", visible);
            return tween;
        };
        displayEngineUtils.ChainX.enabled = function(tween, enabled) {
            var t = tween;
            t._setTo("enabled", enabled);
            return tween;
        };
        displayEngineUtils.ChainX.doubleClickEnabled = function(tween, doubleClickEnabled) {
            var t = tween;
            t._setTo("doubleClickEnabled", doubleClickEnabled);
            return tween;
        };
        displayEngineUtils.ChainX.tabEnabled = function(tween, tabEnabled) {
            var t = tween;
            t._setTo("tabEnabled", tabEnabled);
            return tween;
        };
        displayEngineUtils.ChainX.mouseEnabled = function(tween, mouseEnabled) {
            var t = tween;
            t._setTo("mouseEnabled", mouseEnabled);
            return tween;
        };
        displayEngineUtils.ChainX.mouseChildren = function(tween, mouseChildren) {
            var t = tween;
            t._setTo("mouseChildren", mouseChildren);
            return tween;
        };
        displayEngineUtils.ChainX.tabChildren = function(tween, tabChildren) {
            var t = tween;
            t._setTo("tabChildren", tabChildren);
            return tween;
        };
        displayEngineUtils.ChainX.xy = function(tween, x, y) {
            var t = tween;
            t._setTo("x", x);
            t._setTo("y", y);
            return tween;
        };
        displayEngineUtils.ChainX._xy = function(tween, x, y) {
            var t = tween;
            t._setRelativeTo("x", x);
            t._setRelativeTo("y", y);
            return tween;
        };
        displayEngineUtils.ChainX.__xy = function(tween, x, y) {
            var t = tween;
            t._setRelativeTo2("x", x);
            t._setRelativeTo2("y", y);
            return tween;
        };
        displayEngineUtils.ChainX.scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            t._setTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX._scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            t._setRelativeTo("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX.__scaleXY = function(tween, scaleX, scaleY) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            t._setRelativeTo2("scaleY", scaleY);
            return tween;
        };
        displayEngineUtils.ChainX.rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            t._setTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX._rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            t._setRelativeTo("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX.__rotationXY = function(tween, rotationX, rotationY) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            t._setRelativeTo2("rotationY", rotationY);
            return tween;
        };
        displayEngineUtils.ChainX.xyz = function(tween, x, y, z) {
            var t = tween;
            t._setTo("x", x);
            t._setTo("y", y);
            t._setTo("z", z);
            return tween;
        };
        displayEngineUtils.ChainX._xyz = function(tween, x, y, z) {
            var t = tween;
            t._setRelativeTo("x", x);
            t._setRelativeTo("y", y);
            t._setRelativeTo("z", z);
            return tween;
        };
        displayEngineUtils.ChainX.__xyz = function(tween, x, y, z) {
            var t = tween;
            t._setRelativeTo2("x", x);
            t._setRelativeTo2("y", y);
            t._setRelativeTo2("z", z);
            return tween;
        };
        displayEngineUtils.ChainX.scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setTo("scaleX", scaleX);
            t._setTo("scaleY", scaleY);
            t._setTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX._scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setRelativeTo("scaleX", scaleX);
            t._setRelativeTo("scaleY", scaleY);
            t._setRelativeTo("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX.__scaleXYZ = function(tween, scaleX, scaleY, scaleZ) {
            var t = tween;
            t._setRelativeTo2("scaleX", scaleX);
            t._setRelativeTo2("scaleY", scaleY);
            t._setRelativeTo2("scaleZ", scaleZ);
            return tween;
        };
        displayEngineUtils.ChainX.rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setTo("rotationX", rotationX);
            t._setTo("rotationY", rotationY);
            t._setTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX._rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setRelativeTo("rotationX", rotationX);
            t._setRelativeTo("rotationY", rotationY);
            t._setRelativeTo("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX.__rotationXYZ = function(tween, rotationX, rotationY, rotationZ) {
            var t = tween;
            t._setRelativeTo2("rotationX", rotationX);
            t._setRelativeTo2("rotationY", rotationY);
            t._setRelativeTo2("rotationZ", rotationZ);
            return tween;
        };
        displayEngineUtils.ChainX.a = function(tween, a) {
            var t = tween;
            t._setTo("a", a);
            return tween;
        };
        displayEngineUtils.ChainX._a = function(tween, a) {
            var t = tween;
            t._setRelativeTo("a", a);
            return tween;
        };
        displayEngineUtils.ChainX.__a = function(tween, a) {
            var t = tween;
            t._setRelativeTo2("a", a);
            return tween;
        };
        displayEngineUtils.ChainX.b = function(tween, b) {
            var t = tween;
            t._setTo("b", b);
            return tween;
        };
        displayEngineUtils.ChainX._b = function(tween, b) {
            var t = tween;
            t._setRelativeTo("b", b);
            return tween;
        };
        displayEngineUtils.ChainX.__b = function(tween, b) {
            var t = tween;
            t._setRelativeTo2("b", b);
            return tween;
        };
        displayEngineUtils.ChainX.c = function(tween, c) {
            var t = tween;
            t._setTo("c", c);
            return tween;
        };
        displayEngineUtils.ChainX._c = function(tween, c) {
            var t = tween;
            t._setRelativeTo("c", c);
            return tween;
        };
        displayEngineUtils.ChainX.__c = function(tween, c) {
            var t = tween;
            t._setRelativeTo2("c", c);
            return tween;
        };
        displayEngineUtils.ChainX.d = function(tween, d) {
            var t = tween;
            t._setTo("d", d);
            return tween;
        };
        displayEngineUtils.ChainX._d = function(tween, d) {
            var t = tween;
            t._setRelativeTo("d", d);
            return tween;
        };
        displayEngineUtils.ChainX.__d = function(tween, d) {
            var t = tween;
            t._setRelativeTo2("d", d);
            return tween;
        };
        displayEngineUtils.ChainX.tx = function(tween, tx) {
            var t = tween;
            t._setTo("tx", tx);
            return tween;
        };
        displayEngineUtils.ChainX._tx = function(tween, tx) {
            var t = tween;
            t._setRelativeTo("tx", tx);
            return tween;
        };
        displayEngineUtils.ChainX.__tx = function(tween, tx) {
            var t = tween;
            t._setRelativeTo2("tx", tx);
            return tween;
        };
        displayEngineUtils.ChainX.ty = function(tween, ty) {
            var t = tween;
            t._setTo("ty", ty);
            return tween;
        };
        displayEngineUtils.ChainX._ty = function(tween, ty) {
            var t = tween;
            t._setRelativeTo("ty", ty);
            return tween;
        };
        displayEngineUtils.ChainX.__ty = function(tween, ty) {
            var t = tween;
            t._setRelativeTo2("ty", ty);
            return tween;
        };
        displayEngineUtils.ChainX.alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setTo("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ChainX._alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setRelativeTo("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ChainX.__alphaOffset = function(tween, alphaOffset) {
            var t = tween;
            t._setRelativeTo2("alphaOffset", alphaOffset);
            return tween;
        };
        displayEngineUtils.ChainX.alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setTo("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX._alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setRelativeTo("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.__alphaMultiplier = function(tween, alphaMultiplier) {
            var t = tween;
            t._setRelativeTo2("alphaMultiplier", alphaMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.redOffset = function(tween, redOffset) {
            var t = tween;
            t._setTo("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ChainX._redOffset = function(tween, redOffset) {
            var t = tween;
            t._setRelativeTo("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ChainX.__redOffset = function(tween, redOffset) {
            var t = tween;
            t._setRelativeTo2("redOffset", redOffset);
            return tween;
        };
        displayEngineUtils.ChainX.redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setTo("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX._redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setRelativeTo("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.__redMultiplier = function(tween, redMultiplier) {
            var t = tween;
            t._setRelativeTo2("redMultiplier", redMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setTo("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ChainX._greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setRelativeTo("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ChainX.__greenOffset = function(tween, greenOffset) {
            var t = tween;
            t._setRelativeTo2("greenOffset", greenOffset);
            return tween;
        };
        displayEngineUtils.ChainX.greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setTo("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX._greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setRelativeTo("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.__greenMultiplier = function(tween, greenMultiplier) {
            var t = tween;
            t._setRelativeTo2("greenMultiplier", greenMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setTo("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ChainX._blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setRelativeTo("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ChainX.__blueOffset = function(tween, blueOffset) {
            var t = tween;
            t._setRelativeTo2("blueOffset", blueOffset);
            return tween;
        };
        displayEngineUtils.ChainX.blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setTo("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX._blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setRelativeTo("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.__blueMultiplier = function(tween, blueMultiplier) {
            var t = tween;
            t._setRelativeTo2("blueMultiplier", blueMultiplier);
            return tween;
        };
        displayEngineUtils.ChainX.blurX = function(tween, blurX) {
            var t = tween;
            t._setTo("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ChainX._blurX = function(tween, blurX) {
            var t = tween;
            t._setRelativeTo("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ChainX.__blurX = function(tween, blurX) {
            var t = tween;
            t._setRelativeTo2("blurX", blurX);
            return tween;
        };
        displayEngineUtils.ChainX.blurY = function(tween, blurY) {
            var t = tween;
            t._setTo("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ChainX._blurY = function(tween, blurY) {
            var t = tween;
            t._setRelativeTo("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ChainX.__blurY = function(tween, blurY) {
            var t = tween;
            t._setRelativeTo2("blurY", blurY);
            return tween;
        };
        displayEngineUtils.ChainX.highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setTo("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ChainX._highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setRelativeTo("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ChainX.__highlightAlpha = function(tween, highlightAlpha) {
            var t = tween;
            t._setRelativeTo2("highlightAlpha", highlightAlpha);
            return tween;
        };
        displayEngineUtils.ChainX.shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setTo("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ChainX._shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setRelativeTo("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ChainX.__shadowAlpha = function(tween, shadowAlpha) {
            var t = tween;
            t._setRelativeTo2("shadowAlpha", shadowAlpha);
            return tween;
        };
        displayEngineUtils.ChainX.strength = function(tween, strength) {
            var t = tween;
            t._setTo("strength", strength);
            return tween;
        };
        displayEngineUtils.ChainX._strength = function(tween, strength) {
            var t = tween;
            t._setRelativeTo("strength", strength);
            return tween;
        };
        displayEngineUtils.ChainX.__strength = function(tween, strength) {
            var t = tween;
            t._setRelativeTo2("strength", strength);
            return tween;
        };
        displayEngineUtils.ChainX.quality = function(tween, quality) {
            var t = tween;
            t._setTo("quality", quality);
            return tween;
        };
        displayEngineUtils.ChainX._quality = function(tween, quality) {
            var t = tween;
            t._setRelativeTo("quality", quality);
            return tween;
        };
        displayEngineUtils.ChainX.__quality = function(tween, quality) {
            var t = tween;
            t._setRelativeTo2("quality", quality);
            return tween;
        };
        displayEngineUtils.ChainX.angle = function(tween, angle) {
            var t = tween;
            t._setTo("angle", angle);
            return tween;
        };
        displayEngineUtils.ChainX._angle = function(tween, angle) {
            var t = tween;
            t._setRelativeTo("angle", angle);
            return tween;
        };
        displayEngineUtils.ChainX.__angle = function(tween, angle) {
            var t = tween;
            t._setRelativeTo2("angle", angle);
            return tween;
        };
        displayEngineUtils.ChainX.distance = function(tween, distance) {
            var t = tween;
            t._setTo("distance", distance);
            return tween;
        };
        displayEngineUtils.ChainX._distance = function(tween, distance) {
            var t = tween;
            t._setRelativeTo("distance", distance);
            return tween;
        };
        displayEngineUtils.ChainX.__distance = function(tween, distance) {
            var t = tween;
            t._setRelativeTo2("distance", distance);
            return tween;
        };
        displayEngineUtils.ChainX.bias = function(tween, bias) {
            var t = tween;
            t._setTo("bias", bias);
            return tween;
        };
        displayEngineUtils.ChainX._bias = function(tween, bias) {
            var t = tween;
            t._setRelativeTo("bias", bias);
            return tween;
        };
        displayEngineUtils.ChainX.__bias = function(tween, bias) {
            var t = tween;
            t._setRelativeTo2("bias", bias);
            return tween;
        };
        displayEngineUtils.ChainX.alphas = function(tween, alphas) {
            var t = tween;
            t._setTo("alphas", alphas);
            return tween;
        };
        displayEngineUtils.ChainX.ratios = function(tween, ratios) {
            var t = tween;
            t._setTo("ratios", ratios);
            return tween;
        };
        displayEngineUtils.ChainX.knockout = function(tween, knockout) {
            var t = tween;
            t._setTo("knockout", knockout);
            return tween;
        };
        displayEngineUtils.ChainX.inner = function(tween, inner) {
            var t = tween;
            t._setTo("inner", inner);
            return tween;
        };
        displayEngineUtils.ChainX.bitmapData = function(tween, bitmapData) {
            var t = tween;
            t._setTo("bitmapData", bitmapData);
            return tween;
        };
        displayEngineUtils.ChainX.pan = function(tween, pan) {
            var t = tween;
            t._setTo("pan", pan);
            return tween;
        };
        displayEngineUtils.ChainX._pan = function(tween, pan) {
            var t = tween;
            t._setRelativeTo("pan", pan);
            return tween;
        };
        displayEngineUtils.ChainX.__pan = function(tween, pan) {
            var t = tween;
            t._setRelativeTo2("pan", pan);
            return tween;
        };
        displayEngineUtils.ChainX.volume = function(tween, volume) {
            var t = tween;
            t._setTo("volume", volume);
            return tween;
        };
        displayEngineUtils.ChainX._volume = function(tween, volume) {
            var t = tween;
            t._setRelativeTo("volume", volume);
            return tween;
        };
        displayEngineUtils.ChainX.__volume = function(tween, volume) {
            var t = tween;
            t._setRelativeTo2("volume", volume);
            return tween;
        };
        displayEngineUtils.ChainX.leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setTo("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ChainX._leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setRelativeTo("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ChainX.__leftToLeft = function(tween, leftToLeft) {
            var t = tween;
            t._setRelativeTo2("leftToLeft", leftToLeft);
            return tween;
        };
        displayEngineUtils.ChainX.leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setTo("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ChainX._leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setRelativeTo("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ChainX.__leftToRight = function(tween, leftToRight) {
            var t = tween;
            t._setRelativeTo2("leftToRight", leftToRight);
            return tween;
        };
        displayEngineUtils.ChainX.rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setTo("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ChainX._rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setRelativeTo("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ChainX.__rightToRight = function(tween, rightToRight) {
            var t = tween;
            t._setRelativeTo2("rightToRight", rightToRight);
            return tween;
        };
        displayEngineUtils.ChainX.rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setTo("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ChainX._rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setRelativeTo("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ChainX.__rightToLeft = function(tween, rightToLeft) {
            var t = tween;
            t._setRelativeTo2("rightToLeft", rightToLeft);
            return tween;
        };
        displayEngineUtils.ChainX.prototype.__class__ = displayEngineUtils.ChainX;
        displayEngineUtils.CommandTypeX = {
            __ename__: ["displayEngineUtils", "CommandTypeX"],
            __constructs__: ["TWEEN", "WAIT"]
        };
        displayEngineUtils.CommandTypeX.TWEEN = function(tween) {
            var $x = ["TWEEN", 0, tween];
            $x.__enum__ = displayEngineUtils.CommandTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.CommandTypeX.WAIT = function(delay) {
            var $x = ["WAIT", 1, delay];
            $x.__enum__ = displayEngineUtils.CommandTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.DefaultsX = function() {
            this._autoPlay = displayEngineUtils.TweenX.DEFAULT_AUTO_PLAY;
            this._zigzag = displayEngineUtils.TweenX.DEFAULT_ZIGZAG;
            this._yoyo = displayEngineUtils.TweenX.DEFAULT_YOYO;
            this._repeat = displayEngineUtils.TweenX.DEFAULT_REPEAT;
            this._interval = displayEngineUtils.TweenX.DEFAULT_INTERVAL;
            this._delay = displayEngineUtils.TweenX.DEFAULT_DELAY;
            this._time = displayEngineUtils.TweenX.DEFAULT_TIME;
            this._ease = displayEngineUtils.TweenX.DEFAULT_EASE;
        };
        displayEngineUtils.DefaultsX.__name__ = ["displayEngineUtils", "DefaultsX"];
        displayEngineUtils.DefaultsX.prototype._ease = null;
        displayEngineUtils.DefaultsX.prototype._time = null;
        displayEngineUtils.DefaultsX.prototype._delay = null;
        displayEngineUtils.DefaultsX.prototype._interval = null;
        displayEngineUtils.DefaultsX.prototype._repeat = null;
        displayEngineUtils.DefaultsX.prototype._yoyo = null;
        displayEngineUtils.DefaultsX.prototype._zigzag = null;
        displayEngineUtils.DefaultsX.prototype._autoPlay = null;
        displayEngineUtils.DefaultsX.prototype.dump = function() {
            this._time = displayEngineUtils.TweenX.defaultTime;
            this._ease = displayEngineUtils.TweenX.defaultEase;
            this._delay = displayEngineUtils.TweenX.defaultDelay;
            this._interval = displayEngineUtils.TweenX.defaultInterval;
            this._repeat = displayEngineUtils.TweenX.defaultRepeat;
            this._yoyo = displayEngineUtils.TweenX.defaultYoyo;
            this._zigzag = displayEngineUtils.TweenX.defaultZigZag;
            this._autoPlay = displayEngineUtils.TweenX.defaultAutoPlay;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.apply = function() {
            displayEngineUtils.TweenX.defaultTime = this._time;
            displayEngineUtils.TweenX.defaultEase = this._ease;
            displayEngineUtils.TweenX.defaultDelay = this._delay;
            displayEngineUtils.TweenX.defaultInterval = this._interval;
            displayEngineUtils.TweenX.defaultRepeat = this._repeat;
            displayEngineUtils.TweenX.defaultYoyo = this._yoyo;
            displayEngineUtils.TweenX.defaultZigZag = this._zigzag;
            displayEngineUtils.TweenX.defaultAutoPlay = this._autoPlay;
        };
        displayEngineUtils.DefaultsX.prototype.clone = function() {
            var child = new displayEngineUtils.DefaultsX();
            child._time = this._time;
            child._ease = this._ease;
            child._delay = this._delay;
            child._interval = this._interval;
            child._repeat = this._repeat;
            child._yoyo = this._yoyo;
            child._zigzag = this._zigzag;
            child._autoPlay = this._autoPlay;
            return child;
        };
        displayEngineUtils.DefaultsX.prototype.time = function(value) {
            this._time = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.ease = function(value) {
            this._ease = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.delay = function(value) {
            this._delay = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.interval = function(value) {
            this._interval = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.repeat = function(value) {
            if (value == null) value = 0;
            this._repeat = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.yoyo = function(value) {
            if (value == null) value = true;
            this._yoyo = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.zigzag = function(value) {
            if (value == null) value = true;
            this._zigzag = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.autoPlay = function(value) {
            if (value == null) value = true;
            this._autoPlay = value;
            return this;
        };
        displayEngineUtils.DefaultsX.prototype.__class__ = displayEngineUtils.DefaultsX;
        displayEngineUtils.GroupTypeX = {
            __ename__: ["displayEngineUtils", "GroupTypeX"],
            __constructs__: ["SERIAL", "LAG"]
        };
        displayEngineUtils.GroupTypeX.LAG = function(lag) {
            var $x = ["LAG", 1, lag];
            $x.__enum__ = displayEngineUtils.GroupTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.GroupTypeX.SERIAL = ["SERIAL", 0];
        displayEngineUtils.GroupTypeX.SERIAL.toString = $estr;
        displayEngineUtils.GroupTypeX.SERIAL.__enum__ = displayEngineUtils.GroupTypeX;
        displayEngineUtils.GroupX = function(source, type, defaults) {
            this.current = 0;
            this.source = source;
            this.type = type;
            if (defaults != null) this.defaults = defaults.clone();
        };
        displayEngineUtils.GroupX.__name__ = ["displayEngineUtils", "GroupX"];
        displayEngineUtils.GroupX.prototype.current = null;
        displayEngineUtils.GroupX.prototype.tweens = null;
        displayEngineUtils.GroupX.prototype.source = null;
        displayEngineUtils.GroupX.prototype.type = null;
        displayEngineUtils.GroupX.prototype.defaults = null;
        displayEngineUtils.GroupX.prototype.__class__ = displayEngineUtils.GroupX;
        displayEngineUtils.StandardTweenX = function(type, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos) {
            this._autoFrom = true;
            switch (type[1]) {
                case 1:
                    var toArr = type[4];
                    var fromArr = type[3];
                    var targets = type[2];
                    var _from = fromArr.pop();
                    var _to = toArr.pop();
                    var $it0 = $iterator(targets)();
                    while ($it0.hasNext()) {
                        var t = $it0.next();
                        toArr.push(displayEngineUtils.StandardTweenX.clone(_to));
                        fromArr.push(displayEngineUtils.StandardTweenX.clone(_from));
                    }
                    break;
                default:
            }
            displayEngineUtils.TweenX.call(this, type, time, ease, delay, repeat, yoyo, zigzag, interval, autoPlay, posInfos);
        };
        displayEngineUtils.StandardTweenX.__name__ = ["displayEngineUtils", "StandardTweenX"];
        displayEngineUtils.StandardTweenX.__super__ = displayEngineUtils.TweenX;
        for (var k in displayEngineUtils.TweenX.prototype) displayEngineUtils.StandardTweenX.prototype[k] = displayEngineUtils.TweenX.prototype[k];
        displayEngineUtils.StandardTweenX.prototype._autoFrom = null;
        displayEngineUtils.StandardTweenX.prototype.checkField = function(target, key) {
            if (!_hcmn_.Std["is"](_hcmn_.Reflect.field(target, key), _hcmn_.Dynamic)) throw new js._Boot.HaxeError(this.error(_hcmn_.Type.getClassName(_hcmn_.Type.getClass(target)) + " does not have field '" + key + "'"));
        };
        displayEngineUtils.StandardTweenX.prototype._getTarget = function() {
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype._setTo = function(key, value) {
            this.checkInited(); {
                var _g = this._type;
                switch (_g[1]) {
                    case 2:
                        var _to = _g[4];
                        var _from = _g[3];
                        var target = _g[2];
                        this.checkField(target, key);
                        _hcmn_.Reflect.deleteField(_to, "$$$$" + key);
                        displayEngineUtils.TweenX.setField(_to, key, value);
                        break;
                    case 1:
                        var toArr = _g[4];
                        var fromArr = _g[3];
                        var targets = _g[2];
                        var i = 0;
                        var $it0 = $iterator(targets)();
                        while ($it0.hasNext()) {
                            var t = $it0.next();
                            this.checkField(t, key);
                            var _to1 = toArr[i++];
                            _hcmn_.Reflect.deleteField(_to1, "$$$$" + key);
                            displayEngineUtils.TweenX.setField(_to1, key, value);
                        }
                        break;
                    default:
                }
            }
        };
        displayEngineUtils.StandardTweenX.prototype._setRelativeTo = function(key, value) {
            this.checkInited(); {
                var _g = this._type;
                switch (_g[1]) {
                    case 2:
                        var _to = _g[4];
                        var _from = _g[3];
                        var target = _g[2];
                        this.checkField(target, key);
                        _hcmn_.Reflect.deleteField(_to, "$$$$" + key);
                        displayEngineUtils.TweenX.setField(_to, key, displayEngineUtils.TweenX.field(target, key) + value);
                        break;
                    case 1:
                        var toArr = _g[4];
                        var fromArr = _g[3];
                        var targets = _g[2];
                        var i = 0;
                        var $it0 = $iterator(targets)();
                        while ($it0.hasNext()) {
                            var t = $it0.next();
                            this.checkField(t, key);
                            var _to1 = toArr[i++];
                            _hcmn_.Reflect.deleteField(_to1, "$$$$" + key);
                            displayEngineUtils.TweenX.setField(_to1, key, displayEngineUtils.TweenX.field(t, key) + value);
                        }
                        break;
                    default:
                }
            }
        };
        displayEngineUtils.StandardTweenX.prototype._setRelativeTo2 = function(key, value) {
            this.checkInited(); {
                var _g = this._type;
                switch (_g[1]) {
                    case 2:
                        var _to = _g[4];
                        var _from = _g[3];
                        var target = _g[2];
                        this.checkField(target, key);
                        _hcmn_.Reflect.deleteField(_to, key);
                        displayEngineUtils.TweenX.setField(_to, "$$$$" + key, value);
                        break;
                    case 1:
                        var toArr = _g[4];
                        var fromArr = _g[3];
                        var targets = _g[2];
                        var i = 0;
                        var $it0 = $iterator(targets)();
                        while ($it0.hasNext()) {
                            var t = $it0.next();
                            this.checkField(t, key);
                            var _to1 = toArr[i++];
                            _hcmn_.Reflect.deleteField(_to1, key);
                            displayEngineUtils.TweenX.setField(_to1, "$$$$" + key, value);
                        }
                        break;
                    default:
                }
            }
        };
        displayEngineUtils.StandardTweenX.prototype._initFromTo = function(target, _from, _to) {
            if (this._autoFrom == null) this._autoFrom = displayEngineUtils.TweenX.defaultAutoFrom;
            this._initFrom(target, _from, _to);
            var data = {};
            var fs = displayEngineUtils.TweenX.fields(_from);
            var _g = 0;
            while (_g < fs.length) {
                var key = fs[_g];
                ++_g;
                if (!Object.prototype.hasOwnProperty.call(_to, key)) displayEngineUtils.TweenX.setField(_to, key, displayEngineUtils.TweenX.field(_from, key));
                var t = this._getPosition(this._time, this._repeat % 2 == 0);
                displayEngineUtils.TweenX.setField(data, key, this._calc(displayEngineUtils.TweenX.field(_from, key), displayEngineUtils.TweenX.field(_to, key), t, 1 - t));
            }
            var id = displayEngineUtils.TweenX.hashObject(target);
            if (displayEngineUtils.TweenX._initLog[id] == null) displayEngineUtils.TweenX._initLog[id] = [{
                target: target,
                data: data
            }];
            else {
                var flag = false;
                var _g1 = 0;
                var _g11 = displayEngineUtils.TweenX._initLog[id];
                while (_g1 < _g11.length) {
                    var log = _g11[_g1];
                    ++_g1;
                    if (log.target == target) {
                        var _g2 = 0;
                        var _g3 = displayEngineUtils.TweenX.fields(data);
                        while (_g2 < _g3.length) {
                            var key1 = _g3[_g2];
                            ++_g2;
                            displayEngineUtils.TweenX.setField(log.data, key1, displayEngineUtils.TweenX.field(data, key1));
                        }
                        flag = true;
                        break;
                    }
                }
                if (!flag) displayEngineUtils.TweenX._initLog[id].push({
                    target: target,
                    data: data
                });
            }
            console.log(_to);
        };
        displayEngineUtils.StandardTweenX.prototype._initFrom = function(target, _from, _to) {
            var data = null;
            var _g = 0;
            var _g1 = displayEngineUtils.TweenX.fields(_to);
            while (_g < _g1.length) {
                var key0 = _g1[_g];
                ++_g;
                if (!(typeof(displayEngineUtils.TweenX.field(_to, key0)) == "number")) this._fastMode = false;
                var relative = _hcmn_.HxOverrides.substr(key0, 0, 4) == "$$$$";
                var key;
                if (relative) key = _hcmn_.HxOverrides.substr(key0, 4, null);
                else key = key0;
                var fromValue;
                var toValue = displayEngineUtils.TweenX.field(_to, key0);
                if (!Object.prototype.hasOwnProperty.call(_from, key)) {
                    if (this._autoFrom) {
                        if (data == null) {
                            data = {};
                            var logs = displayEngineUtils.TweenX._initLog[displayEngineUtils.TweenX.hashObject(target)];
                            if (logs != null) {
                                var _g2 = 0;
                                while (_g2 < logs.length) {
                                    var log = logs[_g2];
                                    ++_g2;
                                    if (log.target == target) data = log.data;
                                }
                            }
                        }
                        if (Object.prototype.hasOwnProperty.call(data, key)) fromValue = this._defaultFrom(displayEngineUtils.TweenX.field(data, key), toValue);
                        else fromValue = this._defaultFrom(displayEngineUtils.TweenX.field(target, key), toValue);
                    } else fromValue = this._defaultFrom(displayEngineUtils.TweenX.field(target, key), toValue);
                    displayEngineUtils.TweenX.setField(_from, key, fromValue);
                } else fromValue = displayEngineUtils.TweenX.field(_from, key);
                if (relative) {
                    displayEngineUtils.TweenX.setField(_to, key, toValue + fromValue);
                    _hcmn_.Reflect.deleteField(_to, key0);
                }
            }
        };
        displayEngineUtils.StandardTweenX.prototype._defaultFrom = function(value, _to) {
            if (typeof(_to) == "number") return value;
            var _g = 0;
            var _g1 = displayEngineUtils.TweenX._rules;
            while (_g < _g1.length) {
                var r = _g1[_g];
                ++_g;
                if (_hcmn_.js_Boot.__instanceof(_to, r.inputClass)) return r.defaultFrom(value, _to, this);
            }
            throw new js._Boot.HaxeError(this.error("The tween rule for " + _hcmn_.Type.getClassName(_hcmn_.Type.getClass(_to)) + " is not defined"));
            return null;
        };
        displayEngineUtils.StandardTweenX.prototype.play = function() {
            displayEngineUtils.TweenX.prototype.play.call(this);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.stop = function() {
            displayEngineUtils.TweenX.prototype.stop.call(this);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.update = function(time) {
            displayEngineUtils.TweenX.prototype.update.call(this, time);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype["goto"] = function(time, andPlay) {
            if (andPlay == null) andPlay = false;
            if (time == null) time = 0;
            displayEngineUtils.TweenX.prototype["goto"].call(this, time, andPlay);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onDelay = function(handler) {
            displayEngineUtils.TweenX.prototype.onDelay.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onFinish = function(handler) {
            displayEngineUtils.TweenX.prototype.onFinish.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onFoot = function(handler) {
            displayEngineUtils.TweenX.prototype.onFoot.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onHead = function(handler) {
            displayEngineUtils.TweenX.prototype.onHead.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onInterval = function(handler) {
            displayEngineUtils.TweenX.prototype.onInterval.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onStop = function(handler) {
            displayEngineUtils.TweenX.prototype.onStop.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onPlay = function(handler) {
            displayEngineUtils.TweenX.prototype.onPlay.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onRepeat = function(handler) {
            displayEngineUtils.TweenX.prototype.onRepeat.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onRest = function(handler) {
            displayEngineUtils.TweenX.prototype.onRest.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.onUpdate = function(handler) {
            displayEngineUtils.TweenX.prototype.onUpdate.call(this, handler);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.addEventListener = function(type, listener) {
            this._addEventListener(type, listener);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.removeEventListener = function(type, listener) {
            this._removeEventListener(type, listener);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.time = function(value) {
            displayEngineUtils.TweenX.prototype.time.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.ease = function(value) {
            displayEngineUtils.TweenX.prototype.ease.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.delay = function(value) {
            displayEngineUtils.TweenX.prototype.delay.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.rest = function(value) {
            displayEngineUtils.TweenX.prototype.rest.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.interval = function(value) {
            displayEngineUtils.TweenX.prototype.interval.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.repeat = function(value) {
            if (value == null) value = 1;
            displayEngineUtils.TweenX.prototype.repeat.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.yoyo = function(value) {
            if (value == null) value = true;
            displayEngineUtils.TweenX.prototype.yoyo.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.zigzag = function(value) {
            if (value == null) value = true;
            displayEngineUtils.TweenX.prototype.zigzag.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.autoPlay = function(value) {
            if (value == null) value = true;
            displayEngineUtils.TweenX.prototype.autoPlay.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.setTimeScale = function(value) {
            if (value == null) value = 0;
            displayEngineUtils.TweenX.prototype.setTimeScale.call(this, value);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.skip = function(delay) {
            if (delay == null) delay = 0;
            displayEngineUtils.TweenX.prototype.skip.call(this);
            return this;
        };
        displayEngineUtils.StandardTweenX.prototype.autoFrom = function(value) {
            if (value == null) value = true;
            this.checkInited();
            this._autoFrom = value;
            return this;
        };
        displayEngineUtils.StandardTweenX.clone = function(obj) {
            var result = {};
            var _g = 0;
            var _g1 = _hcmn_.Reflect.fields(obj);
            while (_g < _g1.length) {
                var key = _g1[_g];
                ++_g;
                _hcmn_.Reflect.setProperty(result, key, _hcmn_.Reflect.getProperty(obj, key));
            }
            return result;
        };
        displayEngineUtils.StandardTweenX.prototype.__class__ = displayEngineUtils.StandardTweenX;
        displayEngineUtils.TweenTypeX = {
            __ename__: ["displayEngineUtils", "TweenTypeX"],
            __constructs__: ["GROUP", "ARRAY", "FROM_TO", "FUNC", "CALL"]
        };
        displayEngineUtils.TweenTypeX.ARRAY = function(targets, _from, _to) {
            var $x = ["ARRAY", 1, targets, _from, _to];
            $x.__enum__ = displayEngineUtils.TweenTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.TweenTypeX.FROM_TO = function(target, _from, _to) {
            var $x = ["FROM_TO", 2, target, _from, _to];
            $x.__enum__ = displayEngineUtils.TweenTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.TweenTypeX.GROUP = function(group) {
            var $x = ["GROUP", 0, group];
            $x.__enum__ = displayEngineUtils.TweenTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.TweenTypeX.FUNC = function(func, _from, _to) {
            var $x = ["FUNC", 3, func, _from, _to];
            $x.__enum__ = displayEngineUtils.TweenTypeX;
            $x.toString = $estr;
            return $x;
        };
        displayEngineUtils.TweenTypeX.CALL = function(func) {
            var $x = ["CALL", 4, func];
            $x.__enum__ = displayEngineUtils.TweenTypeX;
            $x.toString = $estr;
            return $x;
        };
        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;
        displayEngineUtils.Utils.__meta__ = {
            obj: {
                globnative: null
            }
        };;
        displayEngineUtils.EaseX.__meta__ = {
            obj: {
                globnative: null
            }
        };;
        displayEngineUtils.EaseX.PI = 3.1415926535897932384626433832795;;
        displayEngineUtils.EaseX.PI_H = displayEngineUtils.EaseX.PI / 2;;
        displayEngineUtils.EaseX.overshoot = 1.70158;;
        displayEngineUtils.EaseX.amplitude = 1;;
        displayEngineUtils.EaseX.period = 0.0003;;
        displayEngineUtils.BoolRuleX.inputClass = _hcmn_.Bool;;
        displayEngineUtils.ArrayRuleX.inputClass = Array;;
        displayEngineUtils.TimelineX.inputClass = displayEngineUtils.TimelineX;;
        displayEngineUtils.RgbX.inputClass = displayEngineUtils.RgbX;;
        displayEngineUtils.HsvX.inputClass = displayEngineUtils.HsvX;;
        displayEngineUtils.ArgbX.inputClass = displayEngineUtils.ArgbX;;
        displayEngineUtils.AhsvX.inputClass = displayEngineUtils.AhsvX;;
        displayEngineUtils.QuakeX.inputClass = displayEngineUtils.QuakeX;;
        haxe.ds.ObjectMap.count = 0;;
        displayEngineUtils.TweenX.__meta__ = {
            obj: {
                globnative: null
            }
        };;
        displayEngineUtils.TweenX._tweens = [];;
        displayEngineUtils.TweenX._addedTweens = [];;
        displayEngineUtils.TweenX.managerInited = false;;
        displayEngineUtils.TweenX.DEFAULT_EASE = displayEngineUtils.EaseX.linear;;
        displayEngineUtils.TweenX.DEFAULT_TIME = 0.3;;
        displayEngineUtils.TweenX.DEFAULT_DELAY = 0;;
        displayEngineUtils.TweenX.DEFAULT_REPEAT = 1;;
        displayEngineUtils.TweenX.DEFAULT_INTERVAL = 0;;
        displayEngineUtils.TweenX.DEFAULT_YOYO = false;;
        displayEngineUtils.TweenX.DEFAULT_ZIGZAG = false;;
        displayEngineUtils.TweenX.DEFAULT_AUTO_PLAY = true;;
        displayEngineUtils.TweenX.DEFAULT_AUTO_FROM = true;;
        displayEngineUtils.TweenX.defaultEase = displayEngineUtils.TweenX.DEFAULT_EASE;;
        displayEngineUtils.TweenX.defaultTime = displayEngineUtils.TweenX.DEFAULT_TIME;;
        displayEngineUtils.TweenX.defaultDelay = displayEngineUtils.TweenX.DEFAULT_DELAY;;
        displayEngineUtils.TweenX.defaultInterval = displayEngineUtils.TweenX.DEFAULT_INTERVAL;;
        displayEngineUtils.TweenX.defaultRepeat = displayEngineUtils.TweenX.DEFAULT_REPEAT;;
        displayEngineUtils.TweenX.defaultYoyo = displayEngineUtils.TweenX.DEFAULT_YOYO;;
        displayEngineUtils.TweenX.defaultZigZag = displayEngineUtils.TweenX.DEFAULT_ZIGZAG;;
        displayEngineUtils.TweenX.defaultAutoPlay = displayEngineUtils.TweenX.DEFAULT_AUTO_PLAY;;
        displayEngineUtils.TweenX.defaultAutoFrom = displayEngineUtils.TweenX.DEFAULT_AUTO_FROM;;
        displayEngineUtils.TweenX._rules = [displayEngineUtils.BoolRuleX, displayEngineUtils.ArrayRuleX, displayEngineUtils.TimelineX, displayEngineUtils.RgbX, displayEngineUtils.HsvX, displayEngineUtils.ArgbX, displayEngineUtils.AhsvX, displayEngineUtils.QuakeX];;
        displayEngineUtils.TweenX.topLevelTimeScale = 1;;
        displayEngineUtils.TweenX._groupDefaults = false;;
        displayEngineUtils.TweenX.updateMode = displayEngineUtils.UpdateModeX.TIME(60);;
        displayEngineUtils.TweenX._initLog = [];;
        displayEngineUtils.TweenX.dictionary = new haxe.ds.ObjectMap();;
        displayEngineUtils.TweenX._objCounter = 0;;
        displayEngineUtils.TweenX._MIN = 1.49011614158922645e-08;;
        displayEngineUtils.TweenX._DELAY = 1;;
        displayEngineUtils.TweenX._FINISH = 8;;
        displayEngineUtils.TweenX._FOOT = 4;;
        displayEngineUtils.TweenX._HEAD = 2;;
        displayEngineUtils.TweenX._INTERVAL = 5;;
        displayEngineUtils.TweenX._PLAY = 0;;
        displayEngineUtils.TweenX._REPEAT = 6;;
        displayEngineUtils.TweenX._REST = 7;;
        displayEngineUtils.TweenX._STOP = 9;;
        displayEngineUtils.TweenX._UPDATE = 3;;
        displayEngineUtils.TweenX.idCounter = 0;;
        return {
            exports: displayEngineUtils
        };
    });